In this web content, the author takes readers on a journey into understanding async programming by starting from the basics. They provide a step-by-step guide to building a simple web server using standard networking types in std::net. The author explains the process of accepting TCP connections, handling HTTP requests, and sending responses. They also introduce the concept of multithreading to improve server performance. However, the author points out that blocking I/O can limit scalability and introduces non-blocking I/O as a solution. They explain the challenges of non-blocking I/O and the need for a scheduler to handle multiple active connections. Overall, the content provides a comprehensive introduction to async programming in a practical and informative manner.
https://ibraheem.ca/posts/too-many-web-servers/