RabbitMQ
Hay: tại sao những hệ thống lớn lên thôi gọi thẳng nhau.
Phần lớn engineer gặp RabbitMQ theo cùng một cách họ gặp mọi message broker khác: như một công cụ để các service nói chuyện mà không phải đợi nhau. Mô tả đó đúng và gần như bỏ qua trọng tâm. RabbitMQ là câu trả lời cho một câu hỏi mà hầu hết engineer chưa bao giờ đặt ra rõ ràng, đó là vì sao mỗi lời gọi trực tiếp giữa hai service là một cam kết ẩn về thời gian, và vì sao cam kết đó là thứ cuối cùng sẽ vỡ.
Series này dành cho engineer đã làm sản phẩm thật và đã dành đủ thời gian debug cascading timeout để nghi ngờ, đâu đó dưới câu trả lời hiển nhiên, rằng vấn đề thực ra có hình dạng khác với những gì retry và circuit breaker có thể chữa. Nó không phải về RabbitMQ như một sản phẩm. Nó về lớp vấn đề mà RabbitMQ được thiết kế để giải quyết, hình dạng của sự decoupling mà nó cung cấp, và các failure mode lộ ra khi sự decoupling đó bị hiểu sai.
Mỗi chương lấy một cơ chế, một quyết định, hoặc một lỗi, và hỏi cùng một câu: coupling mà chương này thật sự đang nói đến là gì, và cost của việc hiểu sai nó thực sự nằm ở đâu?
Bản đồ đọc
Đã đọc 0- IBạn đã từng làm cho hệ thống chờ nhau(bản nháp)21 Th5, 2026·
- IIMessage là gì, và tại sao nó không phải là HTTP(bản nháp)22 Th5, 2026·
- IIIAMQP, ngôn ngữ mà RabbitMQ nói(bản nháp)23 Th5, 2026·
- IVDirect exchange, gửi đúng người(bản nháp)24 Th5, 2026·
- VFanout và topic exchange, một nguồn nhiều đích(bản nháp)25 Th5, 2026·
- VIDead letter queue, khi message không thể xử lý(bản nháp)26 Th5, 2026·
- VIIPublish thành công có nghĩa là gì(bản nháp)27 Th5, 2026·
- VIIIKhi consumer không theo kịp(bản nháp)28 Th5, 2026·
- IXBa lần hệ thống vỡ(bản nháp)29 Th5, 2026·
- XChecklist trước khi đưa lên production(bản nháp)30 Th5, 2026·
- XICâu hỏi để tự phỏng vấn thiết kế của mình(bản nháp)31 Th5, 2026·
- XIIRabbitMQ vs Kafka, không phải ai cũng cần stream(bản nháp)1 Th6, 2026·
- XIIINhững thứ RabbitMQ không giải quyết cho bạn(bản nháp)2 Th6, 2026·
- XIVThiết kế hệ thống là thiết kế câu hỏi(bản nháp)3 Th6, 2026·