Եթե ծառայությունը րոպեներով լուռ է մնում, և փրոքսին ժամկետանցվում է, նախքան սրտի զարկի բայթեր ավելացնելը ընտրեք, թե ինչ պետք է ստանա հաճախորդը։ Ժամաչափը երկարացնելը կարող է օգնել մեկ սպասմանը. պատասխանի պայմանագիրն է որոշում, թե որ առաջընթացն է վավեր։

Ծրագրի ձևավորումԱռաջընթացի պայմանագիր
Ասինխրոն աշխատանք202 Accepted՝ մոնիտորինգը նկարագրող ներկայացմամբ, որին հաջորդում են վերջավոր կարգավիճակի հարցումներ և ավարտի/ձախողման հստակ վիճակներ
Server-Sent Events հոսքContent-Type: text/event-stream և գրառումներ, որոնք հասկանում է SSE հաճախորդը

202-ը չի խոստանում, որ աշխատանքը կհաջողվի։ SSE-ի համար մեկնաբանության գրառումը կարող է այսպիսին լինել.

: heartbeat

Երկու կետը այն դարձնում է մեկնաբանություն, այլ ոչ թե ծրագրի իրադարձություն։ HTML-ի հեղինակային նշումները խորհուրդ են տալիս պարբերական մեկնաբանություններ մոտավորապես 15 վայրկյանը մեկ՝ ընդդեմ փրոքսիի որոշ հին անգործության վարքագծի. սա ուղեցույց է, ոչ թե համընդհանուր ժամկետանցման երաշխիք։

Ավարտեք վերնագրերը և համոզվեք, որ ծրագիրը/սպասարկման շերտը թողարկում է գրառումները՝ դրանք տեղում բուֆերացնելու փոխարեն։ Դեռևս չուղարկված բայթերը չեն կարող ակտիվ պահել ներքևի միջնորդին։

Մի մտցրեք SSE մեկնաբանություններ սովորական JSON կամ բինար բովանդակության մեջ։ HTTP/1.1-ի զրոյական երկարության chunk-ը ավարտում է chunked մարմինը, ուստի այն կրկնելի դատարկ սրտի զարկ չէ։

Պահպանեք գործողության վերջնաժամկետ և չեղարկման քաղաքականություն։ Միայն երթևեկության ակտիվությունը չի ցույց տալիս աշխատանքի օգտակար առաջընթաց կամ վավեր վերջնական արդյունք։

Առնչվող հոդվածներ