Bạn có thể có nhiều trình đọc hàng đợi tùy thích. Nó rất phổ biến để mở rộng các trường hợp vai trò của nhân viên, vì tất cả chúng có thể đọc từ cùng một hàng đợi, cung cấp cho bạn thông lượng công việc lớn hơn nhiều.
Khi bạn đọc một tin nhắn xếp hàng, nó được đánh dấu là "vô hình" trong một khoảng thời gian, để ngăn người khác đọc và làm công việc tương tự. Chủ sở hữu của tin nhắn phải xóa nó trước khi khoảng thời gian hết hạn, nếu không thông báo sẽ hiển thị lại và một ngoại lệ sẽ được ném khi người đọc ban đầu tìm cách xóa nó. Điều này có nghĩa là các hoạt động của bạn phải là không có giá trị.
Không có xử lý tin nhắn độc hại trực tiếp, nhưng thật dễ dàng để thực hiện, vì mỗi tin nhắn đều có số đếm dequeue. Chỉ cần kiểm tra và loại bỏ các thông điệp độc sau khi được đọc 3-4 lần. Bạn cũng có thể tự động điều chỉnh khoảng thời gian chờ dựa trên số đếm dequeue, vì có thể quá trình xử lý không thành công do cửa sổ thời gian quá ngắn.
Đây là MSDN documentation cho DequeueCount
.
EDIT: Theo cách xử lý 11.000 thư trong 3 phút: mục tiêu khả năng mở rộng cho hàng đợi là 2.000 TPS hoặc tối đa 360.000 giao dịch trong 3 phút (vượt quá yêu cầu thông báo 11.000 bạn có). Bạn có thể tăng tốc mọi thứ bằng cách kết hợp các thông điệp vào một tin nhắn xếp hàng đơn, cũng như đọc nhiều tin nhắn cùng một lúc, điều này cũng sẽ làm giảm số lượng giao dịch của bạn. Bạn cũng có thể xem xét thuộc tính ApproximateMessageCount của hàng đợi để xem hàng đợi của bạn có đang sao lưu không (và sau đó mở rộng ra các chất bổ sung để giúp tiêu thụ các mục trong hàng đợi).
Nguồn
2011-08-28 14:09:34
Cảm ơn bạn @David Makogon để có câu trả lời chi tiết. Cảm kích điều đó. –