![System design 101](https://taiha.dev/wp-content/uploads/2024/08/Designer-1.jpeg)
System design 101
August 6, 2024 Tai HaIntroduction So you want to scale your application from 10 to 10,000 users? You need to understand system design. You want to extract services from a monolith because it is getting too large? You need to understand system design. You want to improve the performance of a legacy project? You …
![What is a REST API?](https://taiha.dev/wp-content/uploads/2023/05/diagram.png)
What is a REST API?
May 16, 2023 Tai HaWhat is REST? REST stands for Representational State Transfer. It’s a software architectural style for implementing web services. Web services implemented using the REST architectural style are known as the RESTful web services. REST API A REST API is an API implementation that adheres to the REST architectural constraints. It acts as an interface. The communication between the client and the server happens over HTTP. A REST API takes …
![N-Tier Applications](https://taiha.dev/wp-content/uploads/2023/05/drawing.png)
N-Tier Applications
May 15, 2023 Tai HaAn n-tier application is an application that has more than three components (user interface, backend server, database) involved in its architecture. What are those components? All the social applications like Instagram, Facebook, TikTok, large-scale consumer services like Uber, Airbnb, online massive multiplayer games like Pokémon Go, Roblox, etc., are n-tier applications. n-tier applications are more popularly known as distributed systems. …
![Three-Tier Applications](https://taiha.dev/wp-content/uploads/2023/05/design.png)
Three-Tier Applications
May 15, 2023 Tai HaThree-tier applications are pretty popular and largely used on the web. Almost all simple websites like blogs, news websites, etc., are part of this category. In a three-tier application, the user interface, business logic, and the database all reside on different machines and, thus, have different tiers. They are physically separated. Let’s take the example of …
![Two-tier application](https://taiha.dev/wp-content/uploads/2023/05/product.png)
Two-tier application
May 15, 2023 Tai HaA two-tier application involves a client and a server. The client contains the user interface with the business logic in one machine. Meanwhile, the backend server includes the database running on a different machine. The database server is hosted by the business and has control over it. Why do we need two-tier applications? Why not host the business logic on a different machine and have control over it too? Also, again …
![Single-Tier Applications](https://taiha.dev/wp-content/uploads/2023/05/hyperparameter.png)
Single-Tier Applications
May 15, 2023 Tai HaSingle-tier applications In a single-tier application, the user interface, backend business logic, and the database reside in the same machine. Typical examples of single-tier applications are desktop applications like MS Office, PC Games, image editing software like Gimp, Photoshop, etc. Upsides of single-tier applications The primary upside of single-tier applications is that they have no network latency since …
![Design Amazon](https://taiha.dev/wp-content/uploads/2023/04/product.xyz-953171-scaled-1.jpg)
Design Amazon
April 11, 2023 Tai HaDesign the system that powers Amazon’s e-commerce business. Hints: Walkthrough: