Zpětné volání opětovného připojení proběhne a nový socket se otevře. To je obnova transportu. Neznamená to nutně, že vaše odběry, potvrzení zpráv nebo relace aplikace pokračovaly tam, kde se předchozí připojení zastavilo.

I stejný koncový bod proxy může vytvořit nové odchozí připojení. Změněná výstupní IP také může aktivovat vlastní zásady relace cíle. Považujte nový socket za nové připojení a postupujte podle zdokumentované obnovovací výměny aplikace. Rozhodněte, zda si pracovní postup má při opětovném připojení ponechat svou trasu přes proxy.

Podržte si o něco víc než poslední URL

Užitečný stav obnovy může zahrnovat autorizovanou identitu relace, požadované odběry, identifikátor poslední potvrzené události a operace, které stále čekají na potvrzení. Tato pole patří protokolu aplikace; WebSocket nedefinuje univerzální token pro pokračování.

Rozhodněte, zda pokračovat z kurzoru, získat nový snímek stavu, nebo přijmout mezeru. Pokud zdroj událostí nenabízí rozhraní pro přehrání, rychlejší opětovné připojení nemůže prokázat, že žádné zprávy nebyly ztraceny.

Odeslání dvakrát může znamenat vykonání dvakrát

Zpráva zařazená lokálně do fronty před odpojením možná nikdy neopustila klienta. Jiná se mohla dostat na server, zatímco se její potvrzení ztratilo. Slepé opětovné odeslání každého nepotvrzeného příkazu považuje tyto dva případy za totožné.

Použijte identifikátory požadavků služby, podporu idempotence nebo mechanismus slaďování, kde jsou k dispozici. Opětovné připojení transportu nemůže učinit akci aplikace vratnou ani ji automaticky zbavit duplicit.

Udržujte pokusy o opětovné připojení omezené a tempo podle zásad aplikace. RFC 6455 doporučuje ustoupení po abnormálním uzavření; množství klientů, kteří zkoušejí okamžitě, může zvýšit zátěž během výpadku.

Zaznamenejte, kterou trasu přes proxy každý pokus zvolil, ale držte obnovu trasy oddělenou od obnovy aplikace. „Znovu připojeno“ je užitečný důkaz. „Dohnali jsme a jsme připraveni odeslat další práci“ vyžaduje dodatečnou výměnu aplikace, která to potvrdí.

Související články