WebSocket Ping kontra TCP Keepalive permezz ta' Proxy
Agħżel verifika tal-ħajja għall-peer WebSocket minflok ma tqis socket TCP ħaj bħala prova li t-triq tal-applikazzjoni qed tirrispondi.
Socket TCP ħaj, peer WebSocket li jirrispondi u progress utli tal-applikazzjoni huma osservazzjonijiet differenti:
| Evidenza | X'jistabbilixxi |
|---|---|
| Ħajja fil-livell TCP | It-triq tat-trasport iċċekkjata tirrispondi f'dak il-livell |
| WebSocket Pong li jaqbel | Il-peer wieġeb għal dak il-control frame |
| Konferma mill-applikazzjoni | L-applikazzjoni kkonfermat operazzjoni taħt il-protokoll tagħha stess |
Proxy forward normalment iżomm konnessjonijiet separati għall-klijent u għad-destinazzjoni. Il-peer TCP tal-klijent huwa l-proxy, filwaqt li Ping ġewwa tunnel stabbilit jivvjaġġa lejn l-endpoint WebSocket.
Pong li jaqbel
Il-protokoll jesiġi li Pong li jirrispondi jġorr id-data tal-applikazzjoni tal-Ping. Uża dik il-qbil biex tidentifika prova pendenti. Pong mhux mitlub huwa permess iżda ma jitlobx konferma; li tibgħatu wara kull messaġġ tad-data jipprovdi evidenza differenti.
Ippreferi l-mekkaniżmu tal-heartbeat appoġġat mil-librerija. JavaScript tal-browser minflok jeħtieġkuntratt tal-heartbeat tal-applikazzjoni. Agħżel intervalli u limiti tal-falliment skont ix-xogħol u l-politika tan-netwerk. Waqfiet fl-iskedar jew event loop mgħobbi wisq jistgħu jaqbżu limitu aggressiv mingħajr ma jistabbilixxu li n-netwerk falla.
Żomm ir-riċevitur jaħdem
Il-klijent jeħtieġ I/O kontinwu biex jirċievi u jipproċessa l-control frames. Li timblokka dak il-mekkaniżmu jista' jagħmel nuqqas lokali ta' riżorsi jidher bħala waqfa.
Ping joħloq traffiku fit-tunnel, iżda kull intermedjarju jiddeċiedi x'jissodisfa l-politika tiegħu tal-idle. L-ebda heartbeat ma jiggarantixxi protezzjoni minn limitu assolut tal-ħajja tal-konnessjoni.
Peer jista' jwieġeb għal Ping waqt li l-applikazzjoni tiegħu tieqaf tipproduċi aġġornamenti, u abbonament sieket jista' jkun b'saħħtu. Segwi l-aħħar Pong validu u avveniment sinifikanti tal-applikazzjoni separatament meta t-tnejn huma importanti. F'każ ta' falliment, żomm ir-rotta, il-ħinijiet li għaddew u l-prova pendenti, imbagħad agħlaq jew irkupra permezz taċ-ċiklu tal-ħajja appoġġat.