envoi de message à websockets sur l'intervalle
Je suis en train de construire une "afficher les recherches récentes" les fonctionnalités d'un site web que j'ai. Essentiellement, je voudrais afficher une nouvelle recherche récente sur le site internet toutes les 5 secondes.
Quelle est la meilleure façon de le faire? Je pensais avoir chaque page se connecter à mon serveur avec la prise.io, puis de diffuser un message à tous les sockets toutes les 5 secondes sur de nouvelles recherches. Sur le côté client, lors de la réception du message à partir du serveur sur le socket, je vais utiliser un peu de javascript côté client pour mettre à jour les recherches récentes partie de la page web.
Est la meilleure façon de le faire? Si oui, comment dois-je mettre en œuvre?
Je suis l'aide d'un noeud.js/express.
Socket.io peut/va de secours le temps d'interrogation, etc. où les WebSockets sont pas pris en charge.
OriginalL'auteur Vikas Yendluri | 2011-07-22
Vous devez vous connecter pour publier un commentaire.
Quelque chose comme ça...
(Non testé, mais devrait fonctionner. Nécessite La Prise.IO 0.7.x ou plus récent. Permettez-moi de savoir comment cela va
=]
.Noter, cependant, que c'est pas la manière la plus optimale de ce traitement. Il serait mieux si vous avez utilisé les événements de signal de votre serveur pour envoyer de nouvelles données pour le client. Par exemple, lorsque vous ajoutez de nouvelles données dans votre base de données, à l'époque (et à ce moment-là seulement) envoyer de nouvelles données pour le client. C'est un peu con & inefficace pour vérifier toutes les 5 secondes lorsque vous pouvez concevoir autour d'elle. Le point de l'ensemble de la Prise.IO est de pousser, pas de sondage. Les nouvelles technologies exigent une nouvelle façon de penser.
Également, très important sur l'affichage des recherches récentes: Ces liens sont généralement de ne JAMAIS affiché pour les utilisateurs, car ils sont souvent trop aléatoire pour être utile. Top des recherches, peut-être, mais que l'information ne serait pas changer assez régulièrement pour mériter un tel fréquentes d'actualisation. En outre, la plupart des gens utilisent cette technique pour obtenir leur site web énumérés à la page pour laquelle ils n'ont pas de véritable contenu. Une chose importante à noter est que si vous laissez les moteurs de recherche sur ces pages (par pas de liste noire de vos pages de résultats de recherche dans
robots.txt
), vous courez un risque TRÈS élevé de faible qualité-drapeau de Google.Mes plus sincères conseils: si cela peut être une fonction cool d'avoir, surtout pour une console d'administration, il est tout à fait inutile pour les visiteurs et peut s'avérer préjudiciable à votre site web SEO valeur par l'ajout de l'index de Google de faible qualité du contenu et des charges de liens va nulle part utile. Je n'aurais même pas l'afficher.
OriginalL'auteur
Si vous prenez un temps de 5 secondes, alors je ne crois pas que vous aurez besoin de configurer le socket io. Il suffit de faire un setInterval et demander au serveur toutes les 5 secondes pour de nouvelles recherches récentes. Cela signifie aussi que les appels à recherches récentes ne sera pas synchronisée, s'assurer que le serveur n'a pas à envoyer des mises à jour à tout le monde à la fois (comme il le serait avec la prise.io et de la radiodiffusion, de récentes recherches dans les messages)
OriginalL'auteur rafalio