Thực hành khoảng thời gian thử lại hàng đợi thư


8

Tôi đang cấu hình một hàng đợi thư được thực hiện tùy chỉnh. Có điều là có thể có lỗi gửi thư. Thông thường, người ta sẽ không biết lý do tại sao thư không đến đích. Vì vậy, giải pháp đơn giản nhất là cố gắng gửi thư lại. Đây là một số thuật toán tôi biết từ miệng:

  • Sao chép thời gian trong hàng đợi cho lần thử lại tiếp theo bắt đầu vào một lúc nào đó: 1 phút, 2 phút, 4 phút, v.v.
  • Chỉ định một chuỗi các khoảng (là trường hợp chung của tùy chọn trước): 5 phút, 5 phút, 10 phút, 30 phút, v.v.

Tại một số điểm, sẽ vô nghĩa khi thử gửi lại thư. Dù sao, hệ thống bao gồm một bản ghi cho thư không gửi.

Bạn biết gì về thực hành tốt xung quanh vấn đề này? Khoảng thời gian giữ "tốt" là gì? Ít nhất, những sự thật nào tôi nên đưa vào tài khoản để chọn khoảng thời gian?

Câu trả lời:


6

Bạn phải tuân theo RFC 5321, trong đó nêu rõ cách thực hiện Chiến lược thử lại: http://tools.ietf.org/html/rfc5321#section-4.5.4

Bạn phải hoàn toàn đọc (và hiểu!) RFC này khi bạn đang cố gắng thực hiện máy chủ thư của riêng mình. Nhưng tôi phải nhấn mạnh một cách rõ ràng rằng hầu như không cần phải thực hiện máy chủ thư (máy khách) của riêng bạn. Có rất nhiều giải pháp đã được thử nghiệm (đã được thử nghiệm!) Có hiệu quả trong nhiều năm và nhiều thập kỷ. Vì vậy, sử dụng phần mềm hiện có thay vì bắt đầu từ đầu. Nó không đáng để gặp rắc rối bạn sẽ gặp phải. Bạn thậm chí có biết về IPv6? Nếu không bạn nên!


3
Tất nhiên, không có nghĩa vụ cứng nhắc để gắn bó với RFC, nhưng rất khuyến khích nếu hệ thống cần phải hoạt động trên internet một ngày nào đó. Mặc dù có thể có lý do để thực hiện một hàng đợi thư riêng, tôi hoàn toàn đồng ý rằng mã hiện có được sử dụng trong phần mềm máy chủ thư nên được sử dụng lại thay vì phát minh lại bánh xe.
the-wợi
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.