"Itme"

5 Cevap php

Şu anda içeri Nın gidebilecek yeni veri arıyor, her birkaç saniyede (5), bir GET isteği çalışır jquery / js kodu bir parça var

PHP Yeni mesaj var are mevcut ziyade her birkaç saniyede bir kontrol javascript kodu "itme" veya sinyal için yeni bir şey geldiyse alabilir bir yolu var mı?

Another example: I'm resizing an image for a user. I'd like to display real-time data to the user about the process going on - to display messages like "Uploading to the server", "Resizing your image", "Storing image".

Böyle bir şey üzerinde herhangi bir yardım?

5 Cevap

Comet tam olarak neye ihtiyacınız olabiliyor.

Bu temelde içeri alır anda veri göndermek için açık olasılığı tutarak, sunucu hemen cevap değil icar çalışır

Sorun apache ve IIS şu anda o kadar açıldı bağlantılarını ele oldukça iyi olmamasıdır. usobans cevaba bak.

Bu yapmak istemiyorsanız bir şeydir. 5 saniye javascript anket ile mutlu olun. Gerçekten bunu yapmak için en iyi yoldur.

Böyle WebSync On-Demand gibi bir SaaS çözümü, tavsiye ederim; kısıtlı kullanıcılar için ücretsiz, herhangi bir sunucu dil, kendi sunucusu kurma ile hiçbir sorunlarını, vb ile çalışır

Eğer Comet tekniği çeşit kullanabilirsiniz, ama bu yüke bağlı özel hususlar gerekebilir. Eğer ağır bir yük bekliyoruz eğer eşzamanlı tüm bağlantıları işleyebilir böylece Örneğin, web sunucusu yapılandırmanız gerekebilir. Eğer web sunucusu üzerinde kontrol bu tür var ama trafik bir sürü bekliyoruz yoksa, o zaman yoklama tekniği ile sopa en iyisidir.

Eğer sadece küçük bir grup için bir sayfa kadar hizmet için gidiyoruz eğer ama ... daha sonra bu Comet tekniklerden birini deneyin. yardımcı olabilir jQuery eklentileri vardır:

http://stackoverflow.com/questions/136012/comet-and-jquery

Basit çözüm şu anda uygulanan 5sec anket ile yaşamaktır. Bu kolay uygulama ve genellikle de çalışıyor.

Başka bir seçenek, javascript kod sunucusuna bağlantı açar ve sunucu bir daha acil anlamda istemciye veri göndermek için bu bağlantıyı kullanmak için izin (açık bırakır "uzun yoklama" ... bir sürümünü uygulamak için .) Bağlantıyı algılar javascript istemci (zaman aşımı nedeniyle) kapalı olduğunda, o sadece geri sunucuya başka bir bağlantı başlamak istiyorum. Sunucu kodu uzun yoklama müşterilerin miktarını idare edebilmek gerekir, ve (onlar yeniden bağladığınızda onlar için iletileri kuyruk) müşterilerin zaman zaman kopukluk ele olacaktır.

Son olarak, istemci sunucu tarafı itme yapmak sağlayacak çözümleri gibi "kuyruklu yıldız" vardır. Ben bir php tabanlı Comet uygulama farkında değilim ...