Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Broker Topology

    Broker Topology trong Event-Driven Architecture: Khi hệ thống không cần "nhạc trưởng"


    Trong các bài trước, chúng ta đã tìm hiểu Mediator Topology, nơi mọi luồng xử lý đều được điều phối bởi một thành phần trung tâm (Event Mediator). Tuy nhiên, không phải hệ thống Event-Driven nào cũng cần một "nhạc trưởng".

    Đó là lúc Broker Topology phát huy tác dụng.

    Broker Topology khác với Mediator Topology ở chỗ không tồn tại một thành phần trung tâm chịu trách nhiệm điều phối toàn bộ quy trình xử lý. Thay vào đó, các sự kiện (events) tự nhiên nối tiếp nhau thông qua một Message Broker, thường được triển khai dưới dạng Message Queue như Kafka, RabbitMQ, NATS hoặc ActiveMQ.

    Khi một sự kiện xuất hiện, nó được gửi vào broker. Một event processor phù hợp sẽ nhận sự kiện đó, thực hiện phần công việc của mình rồi phát sinh một sự kiện mới. Sự kiện mới tiếp tục được broker chuyển cho processor tiếp theo. Quá trình này tạo thành một chuỗi xử lý liên tục cho đến khi hoàn thành nghiệp vụ.

    Điểm quan trọng là sau khi xử lý xong một event, processor không còn tham gia vào quy trình đó nữa. Nó chỉ biết công việc của mình và không cần biết toàn bộ luồng nghiệp vụ phía sau.

    Một ví dụ dễ hình dung là chạy tiếp sức (relay race).

    Mỗi vận động viên chỉ chạy một đoạn đường của mình rồi chuyền gậy cho người kế tiếp. Không ai cần biết toàn bộ cuộc đua diễn ra như thế nào, họ chỉ cần hoàn thành phần việc được giao. Trong Broker Topology, "cây gậy tiếp sức" chính là event.

    Ví dụ trong quy trình triển khai máy ảo (VM Provisioning):
    • Event "VM Requested" được gửi vào broker.
    • Resource Allocation Processor nhận event và cấp phát tài nguyên.
    • Sau khi hoàn thành, processor phát sinh event "VM Resources Allocated".
    • Broker chuyển event này cho IPAM Processor.
    • IPAM Processor cấp phát địa chỉ IP và phát sinh event "IP Address Reserved".
    • Event tiếp tục được chuyển đến các processor khác để triển khai VM, cấu hình hệ điều hành và hoàn tất hệ thống.

    Toàn bộ quy trình diễn ra mà không cần một bộ điều phối trung tâm.

    Đây là mô hình rất phổ biến trong các hệ thống:
    • Microservices
    • Cloud-native applications
    • Kubernetes Operators
    • CI/CD Pipelines
    • Infrastructure Automation
    • Large-scale Event Streaming Platforms

    Ưu điểm lớn nhất của Broker Topology là khả năng mở rộng độc lập, giảm sự phụ thuộc giữa các dịch vụ (loose coupling) và tăng khả năng chịu lỗi của hệ thống. Tuy nhiên, đổi lại việc theo dõi luồng xử lý và troubleshooting sẽ phức tạp hơn vì không có thành phần nào nắm toàn bộ workflow. Ôn tập nhanh


    Vai trò của Event Channel trong Event-Driven Architecture là gì?

    Đáp án đúng:

    a. Phân phối sự kiện từ Event Emitters đến Event Consumers

    Event Channel đóng vai trò là "đường dẫn giao thông" giúp các sự kiện được truyền từ nơi phát sinh (Producer/Emitter) đến nơi xử lý (Consumer/Processor), tạo nên nền tảng cho toàn bộ kiến trúc Event-Driven hoạt động hiệu quả.

    Trong thế giới DevOps, Automation và Cloud-Native ngày nay, hiểu rõ sự khác biệt giữa Mediator TopologyBroker Topology là bước đầu tiên để thiết kế các hệ thống phân tán có khả năng mở rộng và tự động hóa ở quy mô lớn.
    Attached Files
    Đặng Quang Minh, CCIE#11897 (Enterprise Infrastructure, Wireless, Automation, AI), CCSI#31417

    Email : dangquangminh@vnpro.org
    https://www.facebook.com/groups/vietprofessional/
Working...
X