Penyebaran biru hijau melibatkan pemompaan aliran data prod langsung (biru) ke lingkungan hot swap non-prod (hijau) dalam persiapan untuk disebarkan untuk menghayati lingkungan hijau, sehingga hijau memiliki sinkronisasi data penuh dengan lingkungan biru prod sebelumnya.
Saya bertanya-tanya apa yang digunakan orang untuk menyalin lalu lintas websocket yang sedang berlangsung dari biru ke hijau, apakah saya menulis sendiri atau apakah ada publikasi / berlangganan perpustakaan websocket atau mungkin pendekatan yang berbeda dengan biru hijau?
Aplikasi saya memiliki server node NEST yang juga mengelola lalu lintas websocket dari perangkat seluler ... server mongodb, dll ... masing-masing dalam wadah di GCE / AWS
Saya menyadari bahwa saya bisa menjaga mongodb tetap sinkron dari biru ke hijau namun itu tidak akan menjalankan server nodejs hijau dengan lalu lintas langsung yang merupakan pemeriksaan kewarasan regresi yang bagus yang saya cari
Mungkin jika saya hanya meneruskan lalu lintas HTTP websocket yang mendasarinya yang berjalan di atas HTTP hanya akan mengurus dirinya sendiri dan tidak menuntut pengaturan hijau biru tertentu
sumber
Jawaban:
Dengan kode server yang direkayasa minimal (aplikasi Google AppEngine dalam contoh) dimungkinkan untuk menduplikasi dan meneruskan lalu lintas HTTP masuk yang diterima oleh server produksi ke server pengujian (atau sebaliknya) untuk tujuan membandingkan respons mereka. Lihat /programming/38799566/can-i-asynchronously-duplicate-a-webapp2-requesthandler-request-to-a-different-u .
sumber
Websockets tidak benar-benar memiliki penanganan untuk ini per se. Anda dapat membangun sistem Anda sendiri tetapi umumnya ide untuk HA adalah bahwa jika terjadi sesuatu, Anda akan mengatur klien untuk terhubung kembali secara otomatis. Akan ada beberapa downtime non-nol selama pertukaran biru-hijau tetapi jika aplikasi Anda dibangun dengan baik itu harus sudah menangani itu.
Jika Anda menginginkan sesuatu yang lebih lancar, Anda dapat membuat pesan di protokol Anda untuk terhubung ke server baru dan kemudian menjatuhkan koneksi yang asli.
sumber