High-level Design of Twitter
Understand the high-level design of the Twitter service.
User-system interaction
Let’s begin with the high-level design of our Twitter system. We’ll initially highlight and discuss the building blocks, as well as other components, in the context of the Twitter problem briefly. Later on, we’ll dive deep into a few components in this chapter.
Users post Tweets delivered to the server through the load balancer. Then, the system stores it in persistent storage.
DNS provides the specified IP address to the end user to start communication with the requested service.
CDN is situated near the users to provide requested data with low latency. When users search for a specified term or tag, the system first searches in the CDN proxy servers containing the most frequently requested content.
Load balancer chooses the operational application server based on traffic load on the available servers and the user requests.
Storage system represents the various types of storage (SQL-based and NoSQL-based) in the above illustration. We’ll discuss significant storage systems later in ...