Scalable design for a webshop
Leveraging client computing power for high performance with many users
May 11, 2020 - Willem L. Middelkoop
As part of the online food ordering app I'm building, I needed to design a scalable backend infrastructure that could handle lots of concurrent users. Scalability is considered a hard problem to tackle. Often it's presented like it's something magical, done by million dollar companies using secret tools. But, there is no such thing as magic, or is there?
Continue reading![Leveraging a user's device: the user's phone does most of the work originally done by the server](/blog/2020-05-11_scalable-application-design-without-magic/images/i_03_Leveraging-a-user-s-device-the-user-s-phone-does-most-of-the-work-originally-done-by-the-server_500px.png)
![Smartphones (and tablets, PC's) have become more powerful over the years (image: Apple)](/blog/2020-05-11_scalable-application-design-without-magic/images/i_02_Smartphones-and-tablets-PC-s-have-become-more-powerful-over-the-years-image-Apple_500px.jpg)
![Separating the remaining server workload: serving products and handling orders](/blog/2020-05-11_scalable-application-design-without-magic/images/i_05_Separating-the-remaining-server-workload-serving-products-and-handling-orders_500px.png)
![Server under high load handling multiple concurrent users](/blog/2020-05-11_scalable-application-design-without-magic/images/i_01_Server-under-high-load-handling-multiple-concurrent-users_500px.png)
![Handling lots of traffic through distributed computing](/blog/2020-05-11_scalable-application-design-without-magic/images/i_06_Handling-lots-of-traffic-through-distributed-computing_500px.png)
![Ordering food online](/blog/2020-05-11_scalable-application-design-without-magic/images/i_04_Ordering-food-online_500px.jpg)