Nếu một dịch vụ im lặng trong nhiều phút và proxy hết thời gian, hãy chọn những gì máy khách nên nhận trước khi thêm byte nhịp tim. Kéo dài bộ hẹn giờ có thể giúp một lần chờ; hợp đồng phản hồi quyết định tiến độ nào là hợp lệ.

Thiết kế ứng dụngHợp đồng tiến độ
Tác vụ không đồng bộ202 Accepted với một biểu diễn mô tả việc giám sát, tiếp theo là các yêu cầu trạng thái hữu hạn và trạng thái hoàn tất/thất bại rõ ràng
Luồng Server-Sent EventsContent-Type: text/event-stream và các bản ghi mà máy khách SSE hiểu

202 không hứa rằng tác vụ sẽ thành công. Đối với SSE, một bản ghi chú thích có thể trông như sau:

: heartbeat

Dấu hai chấm biến nó thành chú thích thay vì sự kiện ứng dụng. Ghi chú soạn thảo của HTML đề xuất chú thích định kỳ khoảng mỗi 15 giây chống lại một số hành vi nhàn rỗi cũ của proxy; đó là hướng dẫn, không phải bảo đảm thời gian chờ phổ quát.

Hoàn tất tiêu đề và đảm bảo ứng dụng/ngăn xếp phục vụ giải phóng các bản ghi thay vì đệm chúng cục bộ. Các byte chưa gửi không thể giữ một trung gian hạ nguồn hoạt động.

Không chèn chú thích SSE vào nội dung JSON hoặc nhị phân thông thường. Một chunk có độ dài bằng không của HTTP/1.1 kết thúc phần thân chunked, vì vậy nó không phải là nhịp tim rỗng có thể lặp lại.

Duy trì thời hạn vận hành và chính sách hủy bỏ. Chỉ hoạt động lưu lượng không cho thấy tiến độ công việc hữu ích hoặc kết quả cuối cùng hợp lệ.

Bài viết liên quan