Ha egy szolgáltatás percekig csendben marad, és egy proxy időtúllépést kap, válassza ki, mit kapjon a kliens, mielőtt szívverésbájtokat adna hozzá. Egy időzítő meghosszabbítása segíthet egy várakozáson; a válaszszerződés határozza meg, melyik előrehaladás érvényes.

AlkalmazástervezésElőrehaladási szerződés
Aszinkron feladat202 Accepted a monitorozást leíró reprezentációval, majd véges állapotkérések és explicit befejezési/hibás állapotok
Server-Sent Events adatfolyamContent-Type: text/event-stream és az SSE-kliens által értelmezett rekordok

A 202 nem ígéri, hogy a feladat sikeres lesz. SSE esetén egy megjegyzésrekord így nézhet ki:

: heartbeat

A kettőspont megjegyzéssé teszi, nem alkalmazáseseménnyé. A HTML szerzői jegyzetei körülbelül 15 másodpercenkénti rendszeres megjegyzéseket javasolnak bizonyos régi proxy-inaktivitási viselkedés ellen; ez útmutatás, nem általános időtúllépési garancia.

Fejezze be a fejléceket, és győződjön meg arról, hogy az alkalmazás/kiszolgáló verem felszabadítja a rekordokat, ahelyett hogy helyben pufferelné őket. A még el nem küldött bájtok nem tarthatnak aktívan egy alsóbb köztes felet.

Ne szúrjon SSE-megjegyzéseket közönséges JSON- vagy bináris tartalomba. A HTTP/1.1 nulla hosszúságú chunkja befejez egy chunked testet, tehát nem ismételhető üres szívverés.

Tartson fenn egy műveleti határidőt és egy törlési szabályzatot. A forgalmi aktivitás önmagában nem mutat hasznos feladatelőrehaladást vagy érvényes végső eredményt.

Kapcsolódó cikkek