2009-10-05 4 views
0

Hay les gars, je suis à la recherche de la technologie «push», mais je pense que je l'ai entendu parler de la mauvaise façon. Y at-il des choses intéressantes que je devrais savoir à ce sujet? Comment cela peut-il être fait en PHP? Peut-il être fait en PHP? Quelle est l'idée générale derrière la poussée?Poussez les questions et aidez-moi

Merci

Répondre

0

Vous devez jeter un oeil à ces http://en.wikipedia.org/wiki/Comet_(programming)

http://www.zeitoun.net/articles/comet_and_php/start

Comet est une technique de programmation qui permet aux serveurs Web pour envoyer des données au client sans avoir besoin pour le client demandez-le. Cette technique produira des applications plus réactives que l'AJAX classique. Dans les applications AJAX classiques, le navigateur Web (client) ne peut pas être averti en temps réel que le modèle de données du serveur a changé. L'utilisateur doit créer une requête (par exemple en cliquant sur un lien) ou une requête AJAX périodique doit avoir lieu afin d'obtenir de nouvelles données pour le serveur.

+0

Pour une référence rapide (et une explication légèrement différente): La façon dont ceci est généralement atteint est d'utiliser un "GET suspendu". Si vous avez un système de transmission de messages pouvant être interrogé pour de nouveaux messages (par exemple une table de base de données) et un navigateur compatible JavaScript, vous pouvez demander au navigateur d'envoyer une requête GET (en utilisant un appel AJAX) qui ne revient pas. serveur jusqu'à ce qu'un message arrive ou qu'un délai d'attente soit atteint. Dans les deux cas, le GET est simplement redémarré pendant ou après l'envoi des messages entrants. – Neel

0

Cela peut se faire en PHP, mais il y a quelques problèmes avec la mise à l'échelle. Si la mise à l'échelle n'a pas trop d'importance, vous pouvez créer un client de pseudo-comète en ayant simplement une page qui ne revient pas immédiatement.

Si vous cherchez quelque chose qui évolue un peu mieux, vous devrez soit obtenir un plein comet server, ou aller avec une solution SaaS (comme WebSync On-Demand - disclaimer, je travaille là).