Backend nền tảng
I3 · Observer và Pub-Sub
Observer: đồng bộ, trong cùng tiến trình; Subject biết các Observer.
I3 · Middle
Observer: thầy giáo nói trực tiếp với học sinh trong lớp. Pub-Sub: đăng lên bảng tin (broker), ai quan tâm tự đọc, hai bên không biết nhau.
Cốt lõi
- Observer: đồng bộ, trong cùng tiến trình; Subject biết các Observer.
- Pub-Sub: qua broker/topic (Kafka/Redis), publisher và subscriber tách rời hoàn toàn.
Đánh đổi
Observer cho sự kiện UI; Pub-Sub cho microservices (event-driven decoupling).
Trong thực tế
Kafka báo Order → Inventory → Email.
Bug thường gặp
Đăng ký listener mà không bao giờ hủy → rò rỉ bộ nhớ và handler bị gọi nhiều lần.
Tự hỏi lại
Liên hệ với Event-Driven Architecture (G8).