Giải pháp Xử lý Lỗi và Tính Năng Nâng cao trong RabbitMQ

RabbitMQ cung cấp cơ chế xác nhận (Confirm) để đảm bảo rằng các tin nhắn đã được gửi đến exchange thành công. await Kênh.XácNhậnChọnAsync(); ThuộcTínhCơBản properties = new ThuộcTínhCơBản() { DeliveryMode = DeliveryModes.Persistent, }; await Kênh.XuấtBảnCơBảnAsync(exchange: exchange, routingKey: routingKey, body: Encoding.UTF8.GetBytes(me ...

Đăng vào ngày 4 tháng 7 lúc 16:01

Gói đóng gói .NET RabbitMQ với Trực tiếp Trao đổi và Hàng đợi Thư chết (Phần 11)

Thư mục Connector - Mã nguồn public interface IRabbitConnector : IDisposable { /// <summary> /// Khởi tạo trao đổi và hàng đợi /// </summary> /// <param name="config"></param> /// <returns></returns> Task SetupExchangeAndQueueAsync(MessageConfigur ...

Đăng vào ngày 4 tháng 7 lúc 15:47

Bảo đảm Tính nhất quán Dữ liệu trong Hàng đợi Tin nhắn

Nguyên nhân gây ra vấn đề nhất quán dữ liệu Các sự cố phổ biến trong hệ thống hàng đợi tin nhắn bao gồm: Lỗi nhà sản xuất: Tin nhắn được nhận bởi broker nhưng chưa ghi đĩa trước khi mất điện Lỗi người tiêu dùng: Xử lý nghiệp vụ thất bại sau khi tiêu thụ tin nhắn thành công Phân phối trùng lặp: Do bất ổn mạng gây ra gửi tin nhắn nhiều lần Bất đ ...

Đăng vào ngày 27 tháng 6 lúc 08:16

Tích Hợp Message Queue ActiveMQ và RabbitMQ Vào Dự Án Spring Boot

Message Queue (MQ) đóng vai trò trung gian trong việc lưu trữ và chuyển tiếp thông điệp giữa các dịch vụ, hoạt động tương tự như hệ thống bưu chính. Mục tiêu chính của kỹ thuật này là hỗ trợ xử lý bất đồng bộ và giảm sự phụ thuộc chặt chẽ giữa các module (decoupling). Về mặt quy trình sử dụng, MQ có nét tương đồng với cơ sở dữ liệu khi cần thiế ...

Đăng vào ngày 27 tháng 6 lúc 00:55

Xây dựng Hệ thống RPC với RabbitMQ và PHP

Giới thiệu về RPC Trong bài hướng dẫn thứ hai, chúng ta đã học cách sử dụng hàng đợi công việc để phân phối các tác vụ tốn thời gian giữa nhiều worker. Nhưng nếu chúng ta cần thực thi một hàm trên máy tính từ xa và chờ kết quả thì sao? Đó là một câu chuyện khác. Mô hình này thường được gọi là "gọi thủ tục từ xa" (RPC). Trong hướng dẫn ...

Đăng vào ngày 21 tháng 6 lúc 02:50

Thiết Lập Hệ Thống Hàng Đợi Thông Điệp Đảm Bảo Tính Sẵn Sàng Cao Với RabbitMQ và HAProxy

Cấu hình môi trường triển khai: Máy chủ chính: 192.168.1.10 (mq-primary) Máy chủ dự phòng: 192.168.1.11 (mq-secondary) Load balancer: 192.168.1.12 (lb-proxy) Đảm bảo cập nhật file /etc/hosts trên tất cả máy để phân giải tên miền nội bộ. Cài đặt RabbitMQ Cluster Thực hiện cài đặt trên cả hai máy chủ mq-primary và mq-secondary: sudo apt updat ...

Đăng vào ngày 20 tháng 6 lúc 01:01

Dùng RabbitMQ Dead Letter Queue để tự động hủy đơn hàng sau 30 phút

1. Bối cảnh Trong một hệ thống nội bộ dành cho nhân viên hỗ trợ, khi họ tạo đơn hàng quảng cáo trên màn hình LED, nếu không xác nhận triển khai trong vòng 30 phút, hệ thống cần tự động hủy đơn hàng đó. Số lượng người dùng và mức độ đồng thời rất thấp. 2. Các giải pháp khả thi Để tự động đóng đơn hàng sau 30 phút, có thể áp dụng một số phương ...

Đăng vào ngày 17 tháng 6 lúc 21:29

Triển Khai Giao Dịch Phân Tán Trong Microservices .NET Sử Dụng CAP Và RabbitMQ

Giới thiệu về tính nhất quán dữ liệu trong kiến trúc phân tán Khi hệ thống phát triển thành kiến trúc microservices, áp lực lên cơ sở dữ liệu tăng lên đáng kể. Để giải quyết vấn đề này, chúng ta thường thực hiện chia tách cơ sở dữ liệu theo chiều ngang (sharding) hoặc chiều dọc (tách bảng theo chức năng). Tuy nhiên, việc phân tách này dẫn đến t ...

Đăng vào ngày 13 tháng 6 lúc 17:15

Hướng Dẫn Tích Hợp RabbitMQ Trong Dự Án Spring Boot

Tổng Quan Về Message Queue Và RabbitMQ Message Queue (Hàng đợi tin nhắn) hay còn gọi là MQ, là phương thức giao tiếp giữa các ứng dụng dựa trên mô hình Producer-Consumer. Một bên tạo ra và đẩy dữ liệu vào hàng đợi, trong khi bên kia trích xuất và xử lý thông tin đó. RabbitMQ là một trong những giải pháp triển khai MQ phổ biến nhất, hỗ trợ giao ...

Đăng vào ngày 10 tháng 6 lúc 04:15

RabbitMQ - Hệ Thống Giao Tiếp Tin Nhắn

I. Kiến Thức Cơ Bản 1. RabbitMQ là gì RabbitMQ được phát hành vào năm 2007, là một hệ thống hoàn thiện dựa trên AMQP (Giao thức Hàng đợi Tin nhắn Nâng cao), viết tắt là MQ. Toàn danh là Message Queue (Hàng đợi Tin nhắn). MQ là một phương pháp giao tiếp giữa ứng dụng và ứng dụng, được phát triển bằng ngôn ngữ Erlang (ngôn ngữ chuyên dụng cho xử ...

Đăng vào ngày 9 tháng 6 lúc 03:30