HTTP ve TCP / IP (Sunucu-İstemci) üzerinden gözlemci modeli


9

Bir sunucum ve bu sunucuya bağlanan birçok istemcim (yaklaşık 50 istemci) var.Tabii ki HTTP protokolüne dayanan bir TCP uygulamasına dayanıyor, bu da TCP / IP kullanıyor (yanlışsam beni düzelt, neden ben ağ oluşturmada gerçekten iyi değilim).

Sorun şu ki, bir kişi tehlikeli değerlere sahip bir form gönderdiğinde, yöneticinin (aynı web uygulamasıyla da bağlanan) ekranında neredeyse gerçek bir uyarı penceresi alması gereken bir uyarı mekanizması geliştirmeliyim. -zaman (anında).

Ancak, HTTP protokolü vatansız olduğundan, burada biraz şaşkınım. Bunu nasıl uygulayabileceğimi bilmiyorum.

Çözümlerden biri, sunucudan her saniye veri çekmek içinsetInterval() işlevle birlikte JavaScript kullanmak olabilir . Ama bu benim için biraz kirli ve profesyonelce değil.

Başka bir çözüm uygulama fikriniz var mı?



Ne tür müşteriler? İnce (tarayıcı tabanlı) istemciler mi yoksa ağır istemciler mi?
ysdx

@ysdx, müşterileri düşünün. Yalnızca tarayıcı desteği olan istemciler.
Saeed Neamati

Yanıtlar:


4

İstemcileri bilgilendirmek için bir çeşit ajax push ( Comet bölümüne bakınız ) kullanmalısınız. Yoklama ihtiyacını ortadan kaldırabilir, temelde tarayıcıyı meydana gelen olayları bildirmek için kullanılabilecek yerleşik bir bağlantıyı açık tutarsınız. Ancak, bu tüm tarayıcılarda çalışmaz. Bu gibi durumlarda "uzun oylamaya" geri dönersiniz.


6

Sanırım bu WebSockets'in yaratılmasının bir nedeni . Eski tarayıcılarla uyumluluğa ihtiyacınız yoksa, yoklama yerine bunu kullanmak isteyebilirsiniz. Muhtemelen oylamayı bir yedek olarak kullanmalısınız.

Spesifikasyonların / uygulamaların bu günlerde ne kadar kararlı olduğundan emin değilim (çok uzun zaman önce çok kararlı değildi). Görünüşe göre en son özellik Firefox 6 ve Chromium 14'te uygulandı.

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.