In this chapter, you learned about some common performance problems and how to fix them. We covered asynchronous operations, select N+1 problems, pragmatic hardware choices, and overly large images.
In the next chapter, we will expand on image optimization and extend this to other forms of compression for different types of resources. We'll look at the process of bundling and minification of static assets in ASP.NET Core using open source tools.
Additionally, we will introduce networking topics such as TCP/IP, HTTP, WebSockets, and encryption. We'll also cover caching, including another look at CDNs.