Bildirimleri ve mesajları göstermek için en iyi yol, bir web sayfasında LIVE?

4 Cevap php

Ben meebo'ya ve facebook gibi anlık mesajlaşma yapmanın gerçekten çok iyi bir şekilde ilgileniyorum ve myspace her bir sayfada bildirimler için de var. Bir kullanıcı yeni bir posta iletisi, fotoğraf yorum, profil Yorum, arkadaş isteği, diğer bazı şeyler aldığında artık sitemde örnek, onlar jQuery ve AJAX kullanarak vardır sayfada bir uyarı mesajı ve bağlantı alacaksınız. Bu benim jquery kod ikonların bu komut ile sayfayı açık olan her kullanıcı için mysql tablo her 30 saniyede bir ya da öylesine sorgulamak için bir PHP komut dosyası çalıştırmak zorunda olacak gibi olsa bunu yapmak için en iyi yol olmadığını bir büyük ölçekte inanmak çalışıyor. Bunu yapmanın etkili bir çıkış yolu bulabilirsiniz eğer ben facebook ekranın alt kısmında bir sohbet bar varmış gibi sonunda anlık mesajlaşma çeşit eklemek istiyorum. Ben Comet ve HTML5 WebSockets terimlerini duymuşsunuzdur ama bu böyle bir özellik için bakıyor olmalı çözümler ise emin değilim? Ben en az bant genişliği tutmak istiyorum ve bir queary birkaç saniyede çalışan bir yüksek trafik sitede çok etkili görünmüyor.

Bazı iyi çözümler biliyorsanız, onlar biraz nasıl çalıştığını lütfen açıklayınız

4 Cevap

Ben Facebook kullanımları XMPP onların sohbet için, bu yüzden bir göz var.

XMPP olduğunu

gerçek zamanlı iletişim için açık bir teknoloji güçler anlık mesajlaşma, varlığı, çok partili sohbet, sesli ve görüntülü aramalar, işbirliği, hafif katman, içerik sendikasyon ve XML veri genelleştirilmiş yönlendirme dahil olmak üzere geniş bir uygulama yelpazesi.

Sen mesajlaşma işlemek için separate server yüklemek istiyorum ve app Eğer mevcut libraries ile bir müşteri uygulamak istiyorum.

Eğer bir "kuyruklu yıldız" sunucu arıyoruz. PHP sözettiğimize açık tutuluyor eşzamanlı bağlantı sayıda gelince PHP ölçeklendirme ile sorunları var, çünkü en iyi çözüm, bu tür WebSync On-Demand gibi bir SaaS çözümü olacaktır. Ayrıca bakınız this question.

Eğer ajax sorgulayabilirsiniz paylaşılan bir ileti kuyruğu olabilir? Belki onun memcached içinde mesajın bir çoğunluğu depolayan bir php script (muhtemelen ve başarısızlık durumunda db yazma).

Emin değilim, ama başka çözümler duymak merak ...

Temel sorun (yani Sunucu Bas uygulamak) bir Comet sunucusu uygulamak için ihtiyaç olmasıdır. Standart web host ve apache kolayca kolayca bu yapmak için izin vermez. (Dışında Web Sync) başka barındırılan bir çözümdür Goldfish Server. Şu anda ücretsiz.