Mavi yeşil tasarlamak için websocket trafiğinin canlıdan hot swap sunucusuna nasıl yayınlanacağı


13

Mavi yeşil dağıtımı, yeşil ortamın önceki ürün mavi ortamıyla tam veri senkronizasyonuna sahip olacağı şekilde yeşil ortamı yaşamaya hazırlanmak için canlı ürün veri akışlarının (mavi) çalışırken değiştirilebilir ortam olmayan bir ortama (yeşil) pompalanmasını içerir.

İnsanların maviden yeşile devam eden websocket trafiğini canlı olarak kopyalamak için ne kullandıklarını merak ediyorum Kendi yazarım mı yoksa bir yayınlama / abone olma websocket kütüphanesi mi yoksa mavi yeşile farklı bir yaklaşım var mı?

Uygulamamın mobil cihazlardan websocket trafiğini de yöneten nodejs REST sunucuları var ... bir mongodb sunucusu, vb ... her biri GCE / AWS'deki kaplarda

Mongodb'u maviden yeşile senkronize tutabileceğimin farkındayım, ancak aradığım güzel bir regresyon akıl sağlığı kontrolü olan yeşil nodejs sunucularını canlı trafikle kullanmaz

Muhtemelen HTTP trafiğini ileri sürersem, HTTP'nin üstünde çalışan temel websocket sadece kendi kendine ilgilenecek ve belirli mavi yeşil kurulum talep etmeyecektir


1
Lütfen DB sunucularını mı yoksa HTTP sunucularını mı dağıtacağınızı doğrulayabilir misiniz?
Purefan

Yanıtlar:


5

Minimal olarak tasarlanmış bir sunucu koduyla (örnekte bir Google AppEngine uygulaması), bir üretim sunucusu tarafından alınan gelen HTTP trafiğini, yanıtlarını karşılaştırmak amacıyla bir test sunucusuna (veya tersi) çoğaltmak ve iletmek mümkündür. Bkz. Https://stackoverflow.com/questions/38799566/can-i-asynchronously-duplicate-a-webapp2-requesthandler-request-to-a-different-u .


Websockets gerçekten normal HTTP trafiği değildir.
coderanger

5

Websockets bu iş için gerçekten herhangi bir işlem yapmaz. Kendi sisteminizi oluşturabilirsiniz, ancak genellikle HA için fikir, herhangi bir şey olursa, istemciyi otomatik olarak yeniden bağlanacak şekilde ayarlayacağınızdır. Mavi-yeşil takas sırasında sıfır olmayan kesinti süreleri olacaktır, ancak uygulamanız iyi oluşturulduysa bunu zaten ele almalıdır.

Daha pürüzsüz bir şey istiyorsanız, yeni bir sunucuya bağlanmak için protokolünüze bir mesaj oluşturabilir ve ardından orijinal bağlantıyı bırakabilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.