Carl Rippon

Building SPAs

Carl Rippon
BlogBooks / CoursesAbout
This site uses cookies. Click here to find out more

Scalable and Performant ASP.NET Core Web APIs: Introduction

January 24, 2018
dotnet

Performant and scalable web APIs

Over the next month or so I’ll be posting a series of posts on creating performant and scalable web APIs using ASP.NET Core 2.0.

Performance is how fast our API can deal with a single request and make a response. Scalability is the amount of concurrent requests our API can deal with before it slows down significantly.

ASP.NET core itself is very focused on performance, which makes it a great choice for building APIs that perform well. v2.0 of .NET Core gave us general performance improvements on commonly used areas such as many of the collection classes, LINQ, compression and text processing. You can read more about the improvements here. In order for us to create APIs that scale well as more users use the API, we’ll need to architect our API well with usage growth in mind.

The series will start with how to profile and load test our API from a performance point of view. This is really important if we want to know we have a performance problem well before our customers tell us!

We’ll then move on to data access. ORMs are very popular these days but they can be the cause of performance issues …

We’ll look at paging, filtering and searching which improve the consumers experience of our API as well as hopefully having a positive performance impact.

We’ll have a good look at caching … allowing the client to cache responses as well as having a gateway cache on our server.

We’ll move on to allowing our API to work asynchronously to see how that effects performance and scalability.

We’ll look at a Microservices architecture and how that can help scalability.

We’ll end up on the topic of large volume imports - a common requirement in line of business applications that store lots of data.


Comments

Bryan Kornele March 28, 2018

Like reading your articles. Thank you for all your efforts. I would like to see all of them so I can pick and choose. It seems I have to go backward or forward one at a time.

Carl March 28, 2018

Thanks Bryan. The intro post has links to the other posts:


Daniel May 25, 2018

Thank you so much for posting this. I have been researching ASP .NET Core 2 MVC and wondering about the scalability of it. This series of articles should answer my questions and point me on the right path! Cheers!

saeed ser August 29, 2018

Thanks a lot for these great and useful articles. I appreciate your effort and prepare/sharing these to us!

Ayesha Irshad November 5, 2019

This is one of those few articles that actually provide value to readers. Thumbs up!

1 more suggested article: https://www.alachisoft.com/resources/whitepapers/scale-dotnet-core-apps.php

If you to learn about using React with ASP.NET Core you might find my book useful:

ASP.NET Core 5 and React

ASP.NET Core 5 and React
Find out more

Want more content like this?

Subscribe to receive notifications on new blog posts and courses

Required
© Carl Rippon
Privacy Policy