Ұзақ HTTP жұмыстары кезінде проксидің бос тұру тайм-ауттары
Ұзақ сервер жұмысы проксидің бос тұру шегіне жеткенде, соңғы жауапқа кездейсоқ байттар кірістірудің орнына сұрау немесе анықталған ағын пішімін таңдаңыз.
Егер қызмет бірнеше минут үнсіз қалса және прокси тайм-аутқа ұшыраса, жүрек соғысы байттарын қоспас бұрын клиенттің не алатынын таңдаңыз. Таймерді ұзарту бір күтуге көмектесуі мүмкін; жауап шарты қандай ілгерілеудің жарамды екенін анықтайды.
| Қолданба дизайны | Ілгерілеу шарты |
|---|---|
| Асинхронды жұмыс | Бақылауды сипаттайтын ұсыныммен 202 Accepted, содан кейін шектеулі күй сұраулары және анық аяқталу/сәтсіздік күйлері |
| Server-Sent Events ағыны | Content-Type: text/event-stream және SSE клиенті түсінетін жазбалар |
202 жұмыстың сәтті болатынына уәде бермейді. SSE үшін түсініктеме жазбасы былай көрінуі мүмкін:
: heartbeat
Қос нүкте оны қолданба оқиғасы емес, түсініктеме етеді. HTML авторлық жазбалары кейбір ескі прокси бос тұру мінез-құлқына қарсы шамамен әр 15 секунд сайын мерзімді түсініктемелерді ұсынады; бұл нұсқаулық, әмбебап тайм-аут кепілдігі емес.
Тақырыптарды аяқтаңыз және қолданба/қызмет стекі жазбаларды жергілікті буферлеудің орнына босататынына көз жеткізіңіз. Әлі жіберілмеген байттар төменгі делдалды белсенді ұстай алмайды.
SSE түсініктемелерін қарапайым JSON немесе бинарлық мазмұнға кірістірмеңіз. HTTP/1.1 нөлдік ұзындықтағы chunk chunked денені аяқтайды, сондықтан ол қайталанатын бос жүрек соғысы емес.
Операция мерзімі мен жою саясатын сақтаңыз. Тек трафик белсенділігі пайдалы жұмыс ілгерілеуін немесе жарамды соңғы нәтижені көрсетпейді.