<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Cà Phê &amp; Code — RabbitMQ</title>
    <link>https://coffeecode.vn/categories/rabbitmq</link>
    <description>Blog cá nhân chia sẻ kiến thức lập trình, kiến trúc phần mềm và công nghệ.</description>
    <language>vi</language>
    <atom:link href="https://coffeecode.vn/categories/rabbitmq/rss.xml" rel="self" type="application/rss+xml"/>
    <item>
      <title>Hàng đợi chờ dùng chung: thông điệp hẹn 0,5 giây phải nằm đó 5 giây</title>
      <link>https://coffeecode.vn/posts/thu-lai-co-do-tre</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/thu-lai-co-do-tre</guid>
      <description>Dựng vòng thử lại có độ trễ bằng TTL và dead letter exchange, đo từng mốc thời gian, và cái bẫy head-of-line làm mọi mức độ trễ thành một.</description>
      <pubDate>Fri, 31 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Một thông điệp độc quay 5 834 vòng mỗi giây và chặn đứng cả hàng đợi — x-delivery-limit không cứu được</title>
      <link>https://coffeecode.vn/posts/redelivery-va-thong-diep-doc</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/redelivery-va-thong-diep-doc</guid>
      <description>Cờ redelivered không đếm, requeue vô hạn ăn sạch consumer, và phép đo cho thấy x-delivery-limit chỉ tính khi consumer chết chứ không tính khi mã của bạn nack.</description>
      <pubDate>Thu, 30 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Prefetch 1 cho 5 991 msg/s, prefetch 100 cho 112 249 — nhưng prefetch cao làm mẻ việc xong chậm gấp 4 lần</title>
      <link>https://coffeecode.vn/posts/prefetch</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/prefetch</guid>
      <description>Đường cong thông lượng theo prefetch từ 1 tới không giới hạn, và mặt trái không ai đo: consumer chậm ôm việc rồi cả mẻ phải chờ nó.</description>
      <pubDate>Wed, 29 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Transaction AMQP chậm hơn confirms ở mọi kích thước lô, và không có chế độ bất đồng bộ nào</title>
      <link>https://coffeecode.vn/posts/transaction-amqp</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/transaction-amqp</guid>
      <description>txSelect, txCommit, txRollback đo cạnh publisher confirms. Vì sao tài liệu chính thức khuyên tránh, và điều rollback thật sự làm với ack.</description>
      <pubDate>Tue, 28 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Confirm từng thông điệp chậm hơn 133 lần, còn ConfirmListener chỉ được gọi 88 lần cho 20 000 thông điệp</title>
      <link>https://coffeecode.vn/posts/publisher-confirms</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/publisher-confirms</guid>
      <description>Bốn cách chờ broker xác nhận, đo cạnh nhau. Vì sao cách trực giác nhất là cách tệ nhất, và cơ chế nào làm cách bất đồng bộ nhanh.</description>
      <pubDate>Mon, 27 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Giết consumer giữa chừng: autoAck mất 948 thông điệp, và prefetch=1 không cứu được gì</title>
      <link>https://coffeecode.vn/posts/acknowledgement</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/acknowledgement</guid>
      <description>Ba chế độ acknowledgement, đo bằng cách giết thật tiến trình consumer. Cái giá thông lượng của an toàn, và hai cách làm channel chết.</description>
      <pubDate>Sun, 26 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>5 000 hàng đợi tốn 319 MiB và 16 giây để dựng, nhưng chỉ thêm 1 giây khi khởi động lại</title>
      <link>https://coffeecode.vn/posts/thiet-ke-topology</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/thiet-ke-topology</guid>
      <description>Ba cách bố trí exchange cho một hệ thống thật, cái giá đo được của topology lớn, và quy ước đặt tên quyết định luôn cả phân quyền.</description>
      <pubDate>Sat, 25 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Vòng lặp DLX bằng TTL bị broker xoá âm thầm, còn vòng lặp bằng reject thì quay mãi mãi</title>
      <link>https://coffeecode.vn/posts/dead-letter-exchange</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/dead-letter-exchange</guid>
      <description>Ba nguyên nhân đưa thông điệp vào dead letter exchange, cách đọc header x-death, và hai kiểu vòng lặp hỏng theo hai hướng ngược nhau.</description>
      <pubDate>Fri, 24 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Bật alternate exchange xong, ReturnListener im lặng — vì thông điệp đã có đường đi</title>
      <link>https://coffeecode.vn/posts/alternate-exchange</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/alternate-exchange</guid>
      <description>Hứng thông điệp không định tuyến được thay vì để nó bốc hơi. Alternate exchange khác mandatory thế nào, và cái giá đo được của nó.</description>
      <pubDate>Thu, 23 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Hàng đợi chỉ nghe «don.vn.#» vẫn nhận được thông điệp gửi thẳng bằng tên nó</title>
      <link>https://coffeecode.vn/posts/default-exchange</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/default-exchange</guid>
      <description>Default exchange là một exchange thật với binding ngầm không gỡ được — và là cửa sau vòng qua mọi luật định tuyến bạn dựng lên.</description>
      <pubDate>Wed, 22 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Headers exchange chạy bằng 42% tốc độ direct, và header «1» không khớp binding 1</title>
      <link>https://coffeecode.vn/posts/headers-exchange</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/headers-exchange</guid>
      <description>Kiểu exchange thứ tư của RabbitMQ: khớp theo bảng header với x-match all hoặc any. Đo hiệu năng, chỉ ra cái bẫy kiểu dữ liệu, và nói thẳng khi nào nên dùng.</description>
      <pubDate>Tue, 21 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Mẫu binding «don.#» khớp cả routing key «don» — vì dấu # ăn được cả không từ nào</title>
      <link>https://coffeecode.vn/posts/topic-exchange</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/topic-exchange</guid>
      <description>Bảng khớp đầy đủ của topic exchange: chín mẫu nhân bảy khoá, đo thật. Khác biệt giữa * và #, và phép đo cho thấy topic gần như miễn phí.</description>
      <pubDate>Mon, 20 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Fanout tới 100 hàng đợi: thông lượng tụt 68 lần, còn số bản ghi mỗi giây thì gần như không đổi</title>
      <link>https://coffeecode.vn/posts/fanout-exchange</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/fanout-exchange</guid>
      <description>Fanout bỏ qua routing key và chép thông điệp cho mọi hàng đợi. Đo cái giá của việc phát tán, và phân biệt chia việc với phát tán.</description>
      <pubDate>Sun, 19 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Direct exchange khớp khoá đúng từng ký tự, và 500 binding không làm nó chậm đi chút nào</title>
      <link>https://coffeecode.vn/posts/direct-exchange-va-routing-key</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/direct-exchange-va-routing-key</guid>
      <description>Kiểu định tuyến đơn giản nhất của RabbitMQ: năm biến thể của cùng một khoá chỉ một cái tới đích, và phép đo cho thấy số binding không ảnh hưởng thông lượng.</description>
      <pubDate>Sat, 18 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>deliveryMode=2 đo ra nhanh hơn deliveryMode=1, vì cả hai đều đã nằm sẵn trên đĩa</title>
      <link>https://coffeecode.vn/posts/thong-diep-gom-nhung-gi</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/thong-diep-gom-nhung-gi</guid>
      <description>Ba phần của một thông điệp AMQP, bốn thuộc tính broker thật sự dùng, và phép đo lật ngược lời khuyên «persistent thì chậm».</description>
      <pubDate>Fri, 17 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Dòng khai báo hàng đợi trong mọi hướng dẫn RabbitMQ đã bị cấm từ bản 4 — và nó giết cả connection</title>
      <link>https://coffeecode.vn/posts/khai-bao-hang-doi</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/khai-bao-hang-doi</guid>
      <description>Bốn cờ khai báo hàng đợi, tám tổ hợp và hai cái không còn được phép. Kèm bốn mã lỗi hay gặp và phạm vi sát thương của từng cái.</description>
      <pubDate>Thu, 16 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>rabbitmq-diagnostics ping xanh ở giây 1,5, còn broker tới giây 4,2 mới nhận nổi một kết nối</title>
      <link>https://coffeecode.vn/posts/nhin-vao-ben-trong-broker</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/nhin-vao-ben-trong-broker</guid>
      <description>Ba đường nhìn vào broker — giao diện, rabbitmqctl và HTTP API. Lệnh kiểm tra nào nói thật, và vì sao số trên giao diện chậm hơn CLI bảy lần.</description>
      <pubDate>Wed, 15 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Consumer đứt kết nối giữa chừng, năm thông điệp quay lại hàng đợi — và cả năm mang cờ redelivered</title>
      <link>https://coffeecode.vn/posts/producer-va-consumer-mo-tung-dong</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/producer-va-consumer-mo-tung-dong</guid>
      <description>Mổ từng tham số của basicPublish và basicConsume, đo vòng đời Ready → Unacked → xong, và cờ mandatory bắt lại thông điệp lạc đường.</description>
      <pubDate>Tue, 14 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Một channel dùng lại gửi nhanh gấp 1 128 lần mở connection mỗi thông điệp</title>
      <link>https://coffeecode.vn/posts/amqp-nam-khai-niem</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/amqp-nam-khai-niem</guid>
      <description>Năm khái niệm của AMQP 0-9-1 và quan hệ giữa chúng, đo bằng số: giá mở connection, giá mở channel, và chỗ thông điệp lặng lẽ biến mất.</description>
      <pubDate>Mon, 13 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
    <item>
      <title>Cổng 5672 mở sau 6 mili giây, nhưng broker chưa sẵn sàng cho tới giây thứ 2,4</title>
      <link>https://coffeecode.vn/posts/dung-rabbitmq-bang-docker</link>
      <guid isPermaLink="true">https://coffeecode.vn/posts/dung-rabbitmq-bang-docker</guid>
      <description>Dựng RabbitMQ bằng Docker chỉ mất một tệp compose. Bốn cái bẫy đi kèm thì mất cả buổi chiều — bài này đo từng cái một.</description>
      <pubDate>Sun, 12 Jul 2026 00:00:00 +0700</pubDate>
      <category>RabbitMQ</category>
    </item>
  </channel>
</rss>
