|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : août 2011 Messages : 29 ![]() |
Bonjour à tous,
Je poste ce message dans PHP, car c'est le langage principal de mon projet, et par conséquent le langage dans le quel je cherche une solution possible (Je suis ouvert à d'autre possibilités). Voilà la problématique : Il est question d’intégrer dans un projet, un chat (multi-canal), possédant quelques fonctions particulières. Ce chat doit être capable de tenir une charge d'au moins 500 utilisateurs sans impacter le reste des performances du server (Apache & co). Il doit gerer des commandes IRC de base tel que /msg /me /join /part /notice (et quelques autres), quelques alias de commandes spéciales, ainsi que des bricoles pas méchante. Le support doit être capable de déplacer les utilisateurs de salon en toute transparence suivant des paramètres transmit par php. (Un peu à la maniere des chat dans les MMORPG type World of warcraft) Solutions envisagées : Ce que je ne veux pas : Java, Flash et IFrame (si possible). En terme de serveur, ce que je connais le mieux est UnrealIRCd. Malheureusement, la mise en place d'un client pour ce genre de serveur peut s'averer fastidieuse voir impossible sans IFrame... Ensuite, il y a Jabber, avec eJabberd et une interface web. Là aussi, la plupart des client que j'ai pu voir possède une IFrame, et les quelques librairies permettant de developper un client sont difficile à maitriser. PHP+MySQL n'est même pas penssable, ainsi qu'un fichier texte type shoutbox. Il sagit là d'un "vrai chat". Autre ? Question : Connaissez vous d'autre solutions, ou, avez-vous déjà du mettre en place ce genre de structure ? Que faut-il prendre en compte ? Dans quel sens proceder ? J'ai vraiment besoin d'avis, de conseil et de feedback car c'est la première fois que je travail sur ce genre de projet. D'avance, je vous remercie |
|
|
00
|
|
|
#2 |
![]() ![]() Développeur Web Inscription : décembre 2006 Messages : 2 335 ![]() |
Salut,
As tu regarder PHP free chat ? Cependant je ne sais pas quelle charge il peut tenir pour ne pas l'avoir déployé.
__________________
Développeur | Zend Certified Engineer Étapes Pour mieux se servir du forum: 1. Commencez par lire les cours et tutoriels ; 2. Faites une recherche; 3. Faites un post si rien trouvé dans les deux étapes précédentes en respectant les règles; Nix>_Rien n'est plus pratique que la théorie |
|
|
00
|
|
|
#3 |
![]() ![]() Inscription : septembre 2010 Messages : 7 104 ![]() |
PHP c'est pas fait pour, mais regarde du coté des WebSocket
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : août 2011 Messages : 29 ![]() |
Bonjour,
Merci pour ta réponse. Cependant, il semblerait que ce soit plus une usine à gaz qu'autre chose. D'après ce que j'ai compri, il utilise des fichiers pour stocker les messages, avec possibilité de MySQL et IRC backend. Je doute la charge supportable sois bien énorme, et une certaine lenteur doit s'installer dans le traitement des évènements. |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : août 2011 Messages : 29 ![]() |
stealth35, je suis ouvert à d'autre solution, comme python ou perl. Mais l'integration dans une page déjà constitué peut être farfelu...
Si tu as des infos, j'suis preneur De plus, les WebSocket ne plus supporté par les navigateurs suite à une faille dans l'API. Sinon la solution semblait être prometteuse ! |
|
|
00
|
|
|
#6 | |
![]() ![]() Développeur Web Inscription : décembre 2006 Messages : 2 335 ![]() |
Citation:
__________________
Développeur | Zend Certified Engineer Étapes Pour mieux se servir du forum: 1. Commencez par lire les cours et tutoriels ; 2. Faites une recherche; 3. Faites un post si rien trouvé dans les deux étapes précédentes en respectant les règles; Nix>_Rien n'est plus pratique que la théorie |
|
|
|
00
|
|
|
#7 | |
![]() ![]() Inscription : septembre 2010 Messages : 7 104 ![]() |
Citation:
peut importe la technologie serveur, ça ne changera rien. Pour le WebSocket, c'est pareil il va te falloir un serveur (node.js par exemple)
__________________
http://blog.stealth35.com/ |
|
|
|
00
|
|
|
#8 | |
|
Invité régulier
![]() Inscription : août 2011 Messages : 29 ![]() |
Citation:
|
|
|
|
00
|
|
|
#9 | |
|
Invité régulier
![]() Inscription : août 2011 Messages : 29 ![]() |
Citation:
|
|
|
|
00
|
|
|
#10 |
![]() ![]() Inscription : septembre 2010 Messages : 7 104 ![]() |
Si tu ne veux aucune technologies clientes, ni serveurs, ton projet n'est pas possible.
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#11 |
|
Invité régulier
![]() Inscription : août 2011 Messages : 29 ![]() |
C'est pas que je ne veux pas, c'est que celle que tu me proposes là ne va plus être supporter par tout les grands navigateur. Dans ce cas, elle n'a donc plus aucune utilité ta solution. et je doute qu'elle puisse tenir d'énorme charge. sinon c'était très prometteur.
Mais je reste ouvert à d'autre proposition plus fiable à l'heure actuelle. Les contraintes ne sont pas énormes, pas de flash, pas de java, pas de iframe (mais là c'pas une obligation je peux m'en accomoder), pas de fichier, pas de base de donner. |
|
|
00
|
|
|
#12 | |
![]() ![]() Inscription : septembre 2010 Messages : 7 104 ![]() |
Citation:
__________________
http://blog.stealth35.com/ |
|
|
|
00
|
|
|
#13 | |
|
Expert Confirmé
![]() Olivier Développeur Web Inscription : août 2003 Messages : 1 837 ![]() |
Citation:
Celui qui doit tenir la charge c'est le serveur (deamon irc ou jabber si j ai bien compris), pas le client. Au pire des cas ton client va recevoir quelques kb de texte , rien de bien méchant. |
|
|
00
|
|
|
#14 |
![]() ![]() Développeur Web Inscription : décembre 2006 Messages : 2 335 ![]() |
Comment tu fais pour savoir si c'est fragile ? juste par le nom ? Dire que nodejs est fragile c'est quand même pas tenable.
__________________
Développeur | Zend Certified Engineer Étapes Pour mieux se servir du forum: 1. Commencez par lire les cours et tutoriels ; 2. Faites une recherche; 3. Faites un post si rien trouvé dans les deux étapes précédentes en respectant les règles; Nix>_Rien n'est plus pratique que la théorie |
|
|
00
|
|
|
#15 | ||
|
Invité régulier
![]() Inscription : août 2011 Messages : 29 ![]() |
Citation:
Citation:
- Flash et Java sont des contraintes, c'est à dire que même si ca me plait pas de faire sans, comme MySQL. J'applique une consigne. - Je suis ouvert à toutes propositions, mais quand on me dit websocket => Websocket. J'suis désolé, c'pas utilisable en prod... A partir de là, il reste quelle solution valable ? peut-être CGI:IRC par exemple, vous en pensez quoi ? un truc plus leger serait plus facilement adaptable et modifiable... m'enfin bref.. |
||
|
|
00
|
|
|
#16 |
![]() ![]() Inscription : septembre 2010 Messages : 7 104 ![]() |
reste plus grand chose, pour le CGI, le problème est que c'est de la requête en continu pour le client.
Pour le reste merci de resté correct.
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#17 |
|
Invité régulier
![]() Inscription : août 2011 Messages : 29 ![]() |
Moi côté serveur, je m'en cogne un peu de ce qu'il y a, tant que ca répond à mes besoins. Il faut juste que l'impact sur le reste sois minime, tout sera sur un seul serveur (au début).
les clients actuel comme mibbit fonctionne de quelle maniere ? (j'ai pas besoin d'un d'utre aussi compliqué et complet ^^) |
|
|
00
|
|
|
#18 |
![]() ![]() Inscription : septembre 2010 Messages : 7 104 ![]() |
de l'AJAX comme tout les clients sans plugin.
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#19 |
|
Invité régulier
![]() Inscription : août 2011 Messages : 29 ![]() |
Ca d'accord, mais qu'est ce qui maintient la connexion aec le server ? du php sans doute, mais de qui'elle maniere ? et jax est utilisé comment ?
Parce que bon, une boucle php maintient une connexion, mais ajax ne peut pas itransmettre de réponse tant le script php ne se termine pas. |
|
|
00
|
|
|
#20 | |
![]() ![]() Inscription : septembre 2010 Messages : 7 104 ![]() |
Citation:
__________________
http://blog.stealth35.com/ |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com