Introduction
Today's software applications often need to be designed to be resilient under varying degrees of load that originates from web or mobile clients. Either we are dealing with a web service tier (or web API) or just frontend web applications. Scaling to thousands or millions of users is something that is not only up to the infrastructure, but, mainly, it is a software aspect. Best practices while writing software could avoid bottlenecks and performance issues. We can save some CPU cycles (and potentially, save money on Azure by allocating less instances) by optimizing the most used functions, and we can rely on common sense to protect our core resources from the external attacks (database, for example).
At the end of what we can optimize in terms of software, we have the ubiquitous, big issue of data access. Scalable persistence stores have been a very important problem to solve in recent years, especially for the correlation between persisting something and slow performance. We...