ASP. core–2300% more requests Served Per Second

Source: Internet
Author: User

http://www.ageofascent.com/asp-net-core-exeeds-1-15-million-requests-12-6-gbps/

ASP. Core–exceeds 1.15 Million request/s, 12.6 Gbps

Congratulations to ASP. NET core teams and the Open Source. NET community for quite a milestone in Performanc E!

2300% more requests Served Per Second

1.15 Million represents a 2300% gain from ASP. 4.6!

Why 2 decimal places? I ' m not sure why Scott Hunter chose this level of precision, but to me it ' s quite significant ...

The third decimal place 0.05 Million (e.g. 50,000) are around the total number of requests per second that ASP. 4.6 Could perform of the same type, on the same hardware–as shown in the below graph:

ASP. 4.6 and NodeJs is bottom left. You can see the rapid strides in performance the leaner, more agile and componentized stack have taken (blue Windows, orang e Linux) In just a few short months.

ASP. NET core come with the great advantage of only including the libraries and functions you explicitly want To your application rather than bringing in the entire framework. "Pay", programmatically speaking, and the

This ethos is being repeated around Microsoft:nano Server (Windows Server) are so slim it's only have processes Runni Ng–including your application! In a similar vein, Azure have ' to the nearest minute ' billing on VMs.


This also allows easy side by side installation of different versions of the. NET framework in the same machine without ve Rsion Collision–or The fear of "what would happen to all the other apps on the same machine when I upgrade the framework For the This app. While. NET have always had a great version compatibility stories, the upgrade fear is real.

More than 12.6 Gbps of throughput

1,150,000+ requests served per second is for small fine-grained requests; How about does it perform for serving larger requests e.g. video, images, JS, fonts and CSS files?


Running on a Azure G4 VM you can see we can hits 12.6 Gbps while the only using 36% CPU. The around the network cap for this type of machine–or we ' d be going even faster!

Why are this important?

At a business level it means we can do more with less–which directly effects our bottom line.

I often hear the defeatist argument that performance like this doesn ' t matter because (eg) "My database is slow". That's like saying I might as well use PHP in interpreted mode because "my database is slow" (have any one ever said? I Hope not). There is so much more potential, and it's not just about raw throughput!

Looking at the simplistic case; I ' d hope aren ' t serving your assets from a slow database ... If You is, maybe should reexamine your architecture choices or at least revisit what is doing in the caching spa Ce. Everyone caches, even your CPU.

Moving to the cloud with On-demand scaling would also save your money. Or you can spend the same amount of money–but does a lot more.

Customer Delight

If you can leverage it, the question your should ask is whether the hugely improved response times of ASP. Ight your users.

Steve Desmond in He post performance is Paramount; Saw his page response times from upgrading from BETA8 (OCT) to RC1 (in Nov) decrease from 20ms to 4ms.

Bear on Mind ASP Beta8 was already 800% faster than ASP 4.6, which itself was pretty nippy compared to many W EB frameworks and languages. RC2 is shaping up to being even faster–throw in some caching and you'll be going back in time!

Microsoft, Open Source & the. NET Foundation

Parts of ASP been open source awhile and the. NET source has been viewable also, but at the Build conference Microsoft announced the creation of the. NET Foundation as an independent forum to provide stewardship and to foster open Development and collaboration for the growing collection of open source technologies of. NET.

In November, they then announced. NET Core is Open Source under the. NET Foundation and accepting contributions . It rapidly became cross-platform, running on Windows, Mac and Linux–with Mono and xamarinproviding even wider platform s Upport–including Android and IOS.

is open source good for. NET? Has it changed anything? As an example of what are different is myself, Ben Adams @ illyriad games and Stephen halter at Microsoft jostling for the Top spot on Contributions to Kestrel, ASP. NET ' s Web Server. This wouldn ' t has happened previously!

Contributing to. NET OSS

We like open source because it gives us the best of both worlds:a great diversity of minds from all around the world with Wider viewpoints than our own–including specialists in their field–with the ability to contribute if we need changes or fixes to suit we more particular needs.

Generally the community would build (and often improve) upon our contribution; Enriching it for better code for all. Much like life; Diversity is a good thing!

It also have the Fringe bonus that Microsoft checks and reviews We code and–once it gets into a release build–they off Er an Enterprise support agreement for it if anything goes wrong

Why was a high performance ASP. Important to Illyriad?

We is building age of Ascent–an Ultra-mmo; A new scale of game. Born in the cloud, it enables tens of thousands of pilots to being in the same battle; And millions of players to being in the same single-sharded Universe–which can is accessed anywhere at no time, on any dev Ice.

It has real-time twitch combat, and yet are playable in a browser using HTML5 and WebGL.

So we need a high performance, the high throughput, the low latency Web server. This might is a bit of a niche case and the world of a high speed real-time web is not being applicable to everyone.

However, this isn't our only use case, and isn't the only reason we contribute back to improve ASP. NET Core ' s perf Ormance. Age of Ascent are a lot more than a twitch space combat game.

Our other main component are likely more applicable to a wider audience.

Micro-services

Age of Ascent is composed of multiple independent, dynamically scalable, stateful and stateless Micro-services hosted and Orchestrated with Service Fabric on Microsoft Azure. Service Fabric allows us to has a high density micro-service cluster which both scales to unexpected demands and grows as We grow.

Our communication mechanism between these micro-services are entirely ASP based on David Zhao ' s excellentservice F Abric ASP. NET Core Hosting example.

This means our entire system's responsiveness and performance hinges on the performance of ASP. This is what it is important; And why we strive for performance. The more we can do; The richer an experience we can create a players–at a lower cost.

Its important also because, the days of Moore's law performance improvements for single CPU cores is long gone; Yet we also need to does more, and we are going big–really big. We need to get smarter, + efficient, cut the unnecessary, and scale across cores, sockets, containers and clusters of M Achines better.

. NET core and ASP. Really shaping up-to is the frameworks that we don't only want, but also need.

Congratulations to the team!

ASP. core–2300% More requests Served Per Second

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.