> > > > Le problème que je me suis posé est la façon dont ça marcherait ... si > > > je demande à rafraichir la page de texte dans laquelle je viens > > > d'envoyer un message : ok mais comment envoyer l'information à tous > > > les clients qui ont aussi cette même page.
La question de base c'est : combien as tu de clients simultanés ? Si tu as moins d'une vingtaine de clients simultanés (équipe de projet, groupe d'amis, etc.) alors il est possible de faire du nph. Ca existait sur les CGI, ça doit toujours exister. Il s'agit simplement de faire un script qui ne se termine pas. Le serveur envoie des lignes au client dès qu'il les reçoit (ce n'est donc pas au client d'aller chercher régulièrement les nouveautés) et envoie régulièrement quelques lignes vides pour éviter que la connexion coupe. Le défaut c'est que ça demande autant de process que de clients, et en rails ça bouffe beaucoup (ruby pourrait aller, mais rails me parait difficile vu l'occupation mémoire). Sinon effectivement, ça se joue avec de l'ajax ou du rafraichissement de page. L'idéal étant de pouvoir générer en permanence un fichier sur le disque et que les clients aillent chercher ce fichier statique, histoire de ne pas déclencher du ruby/rails à chaque requête. Il te restera alors du javascript pour interpréter ce fichier, et du javascript pour faire une gestion "intelligente" des temps de rafraichissement (rafraichissement rapide dans la minute après avoir envoyé du texte, puis de plus en plus lent, et plus lent quand il y a peu d'activité). Met de toutes façons un minimum à 5s et un maximum à 5min. En dessous ton serveur ne va pas tenir la charge. Au dessus c'est le client qui va être excédé. AMHA le mieux reste une bête passerelle flash vers IRC (ou mieux, un client IRC classique). le HTTP n'est pas trop fait pour ça. -- Éric Daspet http://eric.daspet.name/ --~--~---------~--~----~------------~-------~--~----~ Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de Google Groups. Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED] -~----------~----~----~----~------~----~------~--~---
