Callback sambung semula berjalan dan soket baharu dibuka. Itu pemulihan pengangkutan. Ia tidak semestinya bermakna langganan, pengakuan mesej atau sesi aplikasi anda berterusan dari tempat sambungan sebelumnya berhenti.

Malah titik akhir proksi yang sama boleh menghasilkan sambungan keluar baharu. IP keluar yang berubah juga boleh mencetuskan dasar sesi destinasi itu sendiri. Anggap soket baharu sebagai sambungan baharu dan ikut pertukaran pemulihan yang didokumenkan oleh aplikasi. Tentukan sama ada aliran kerja perlu mengekalkan laluan proksinya semasa menyambung semula.

Simpan sedikit lebih daripada URL terakhir

Keadaan pemulihan yang berguna boleh merangkumi identiti sesi yang dibenarkan, langganan yang dikehendaki, pengecam peristiwa terakhir yang disahkan dan operasi yang masih menunggu pengakuan. Medan itu milik protokol aplikasi; WebSocket tidak mentakrifkan token sambung semula sejagat.

Tentukan sama ada untuk menyambung dari kursor, mendapatkan syot kilat baharu atau menerima jurang. Jika sumber peristiwa tidak menawarkan antara muka main semula, sambung semula dengan lebih pantas tidak dapat membuktikan tiada mesej yang terlepas.

Menghantar dua kali boleh bermakna melakukan dua kali

Mesej yang dimasukkan ke dalam baris gilir secara setempat sebelum pemutusan mungkin tidak pernah meninggalkan klien. Yang lain mungkin telah sampai ke pelayan semasa pengakuannya hilang. Menghantar semula setiap arahan yang belum disahkan secara membuta tuli menganggap kedua-dua kes itu sama.

Gunakan pengecam permintaan perkhidmatan, sokongan idempotensi atau mekanisme perdamaian jika tersedia. Sambung semula pengangkutan tidak boleh menjadikan tindakan aplikasi boleh diterbalikkan atau menyahgandakan secara automatik.

Kekalkan percubaan sambung semula terhad dan berirama mengikut dasar aplikasi. RFC 6455 mengesyorkan berundur selepas penutupan tidak normal; sekumpulan klien yang mencuba semula serta-merta boleh meningkatkan beban gangguan.

Rekod laluan proksi yang dipilih oleh setiap percubaan, tetapi asingkan pemulihan laluan daripada pemulihan aplikasi. “Bersambung semula” ialah bukti yang berguna. “Sudah menyusul dan bersedia menghantar lebih banyak kerja” memerlukan pertukaran aplikasi tambahan yang menetapkannya.

Artikel berkaitan