Other articles


  1. System Design: Lesson 12.2 - Requirements of a Distributed Messaging Queue’s Design

    Requirements

    In a distributed messaging queue, data resides on several machines. Our aim is to design a distributed messaging queue that has the following functional and non-functional requirements.

    Functional requirements

    Listed below are the actions that a client should be able to perform:

    • Queue creation: The client should be able …
    read more
  2. System Design: Lesson 12.3 - Considerations of a Distributed Messaging Queue’s Design

    Before embarking on our journey to design a distributed messaging queue, let’s discuss some major factors that could significantly affect the design. These include the order of messages, the effect of the ordering on performance, and the management of concurrent access to the queue. We discuss each of these …

    read more
  3. System Design: Lesson 12.4 - Design of a Distributed Messaging Queue: Part 1

    So far, we’ve discussed the requirements and design considerations of a distributed messaging queue. Now, let’s begin with learning about the high-level design of a distributed messaging queue.

    Distributed messaging queue

    Unlike a single-server messaging queue, a distributed messaging queue resides on multiple servers. A distributed messaging queue …

    read more
  4. System Design: Lesson 12.5 - Design of a Distributed Messaging Queue: Part 2

    In the previous lesson, we discussed the responsibilities of front-end servers and metadata services. In this lesson, we’ll focus on the main part of the design where the queues and messages are stored: the back-end service.

    Back-end service

    This is the core part of the architecture where major activities …

    read more
  5. System Design: Lesson 12.6 - Evaluation of a Distributed Messaging Queue’s Design

    We completed the process of designing a distributed messaging queue. Now, let’s analyze whether the design met the functional and non-functional requirements of a distributed messaging queue.

    Functional requirements compliance

    • Queue creation and deletion: When a request for a queue is received at the front-end, the queue is created …
    read more

links

social