| 
					Serveur multi-client en python
				 | 
| 
					01-01-2013, 12h11 
(Modification du message : 01-01-2013, 12h11 par InstinctHack.)
				 Message : #1 | |
| InstinctHack   Posting Freak  Messages : 1,366 Sujets : 184 Points: 299 Inscription : Dec 2011 | Serveur multi-client en python 
		Bonjour! J'aimerais créer un mini serveur en python, cela uniquement dans un but : Permet à plusieurs programmes locals (mais des distants peuvent aussi, je suis pas contre :p) J'ai deux exigences, un code assez simple et qui permettent à plusieurs programmes en même temps d'envoyer du texte (environ 50 caractères par envoi) En même temps, ça veut dire que le serveur n'est pas limité à un seul client  Voilà mon fichier pour un système de ping/pong entre deux machine (l'une doit toujours attente le message de l'autre et il ne doit pas être totalement fini mais je m'en fout, parce que je veut aller plus loin après  ) sercli_v1.py a écrit : Ce nouveau code permet d'envoie de message dans les deux sens, en quitant le système envoie/reponse et en utilisant des threads (des beugs existent, affichage, erreur pendant la connexion etc... mais ça fonctionne  ) sercli_v2.py a écrit :Ces codes marchent très bien avec un seul client, mais pas plus :/ Comment corriger cela ? sercli_v3.py a écrit : EDIT : j'ai trouver ça et je vais lire :> http://fr.wikibooks.org/wiki/Apprendre_%...%C3%A9seau EDIT 2 : j'ai mis mon premier code fonctionnel si ça interesse des gens... EDIT 3 : j'ai rajouter mon deuxième code  Dernier EDIT : J'ai finalement obtenu ce que je désirais, un programme capable de recevoir des data en provenance d'autres programmes et meme d'autres machines! Il marche dans les deux sens également  Il suffit de le lancer ainsi: sercli.py server puis pour créer un client : sercli.py client la console du client vous donne la possibilité d'envoyer un texte au server à l'infinie et la console du server fait l'inverse, mais il faudras faire précéder le message de l'identifiant du client qui est sous cette forme {ip}:{port} donc un message type pourrais être 127.0.0.1:59485 pong D'autres fonctionnalitées verront le jour probablement comme l'authentification, le chiffrement, le message public (venant d'un user pour faire comme irc, ou venant du serveur pour faire une annonce), également des processus fils pourrait être créer ou des sockets asynchrones... bref  petit lien sur le sujet : http://squirl.nightmare.com/medusa/async_sockets.html VIVE LE PARTAGE!   Citation :un jour en cours de java j'ai attrapé les seins d'une fille mais elle m'a frappé en disant "c'est privé !!" | 
|  | |
| 
					01-01-2013, 15h05 
				 Message : #2 | |
| ark   Psyckomodo!      Messages : 1,033 Sujets : 48 Points: 317 Inscription : Sep 2011 | RE: Serveur multi-client en python 
		Thanks pour le code, pas mal de trucs intéressants, je lirais ça sérieusement quand j'aurais un peu de temps. :)
		
			
		
	 | 
|  | |
| 
					03-01-2013, 19h34 
				 Message : #3 | |
| notfound   #!/usr/bin/env bash  Messages : 687 Sujets : 47 Points: 272 Inscription : Sep 2012 | RE: Serveur multi-client en python 
		Très sympa ce code Khaled !  Juste pour information purement orthographique, on dit "tentative de connexion" et non pas "tentation de connexion" ... | 
|  | |
| 
					03-01-2013, 23h36 
				 Message : #4 | |
| InstinctHack   Posting Freak  Messages : 1,366 Sujets : 184 Points: 299 Inscription : Dec 2011 | RE: Serveur multi-client en python 
		Merci notfound Faute corrigée (dans mon hdd) Je tiens cependant à préciser que ces codes sont publiés sous licence. plus d'informations sur la licence utilisée : http://fr.m.wikipedia.org/wiki/WTF_Public_License   Citation :un jour en cours de java j'ai attrapé les seins d'une fille mais elle m'a frappé en disant "c'est privé !!" | 
|  | |
| 
					25-06-2013, 09h42 
				 Message : #5 | |
| belley   Newbie  Messages : 13 Sujets : 1 Points: 1 Inscription : Jun 2013 |  RE: Serveur multi-client en python 
		Trés interessant poste!  J'y jeterais un oeil ce soir je pense. | 
|  | |
| 
					25-06-2013, 22h23 
(Modification du message : 07-07-2013, 23h00 par WizOut.)
				 Message : #6 | |
| WizOut   Black Slave Coder  Messages : 111 Sujets : 13 Points: 14 Inscription : Apr 2012 | RE: Serveur multi-client en python 
		Ah merci, même si je sais utilisé les sockets en général, c'était juste pour le module du threading   que je ne sais pas encore gérer. Il y a bien la méthode select() pour accueillir plusieurs connexions mais le soucis avec celui ci c'est lors de l'envoi d'un message spécifique de la part de l'utilisateur (coté serveur), il bloque à l'approche d'un 'input'  quand un client se connecte la meilleur solution reste celle avec l'utilisation des threads (comme tu as fait) qui fait ça parallèlement. Bref merci +1 au passage! 
"Il existe deux choses infinies : l'univers et la bêtise humaine" Einstein. PHP/MySQL (POO & PDO) : OK HTML5/CSS3 : OK JAVA : En cours | 
|  | |
| 
					25-06-2013, 23h19 
				 Message : #7 | |
| InstinctHack   Posting Freak  Messages : 1,366 Sujets : 184 Points: 299 Inscription : Dec 2011 | RE: Serveur multi-client en python 
		@WizOut, tu peux mettre select en non-bloquant, et aussi t'intéresser à (e)pool qui permettent de gérer BIEN BIEN plus de clients que ce code merdique :p
		
			
		
	 Citation :un jour en cours de java j'ai attrapé les seins d'une fille mais elle m'a frappé en disant "c'est privé !!" | 
|  | |
| 
					26-06-2013, 12h30 
				 Message : #8 | |
| WizOut   Black Slave Coder  Messages : 111 Sujets : 13 Points: 14 Inscription : Apr 2012 | RE: Serveur multi-client en python (25-06-2013, 23h19)InstinctHack a écrit : @WizOut, tu peux mettre select en non-bloquant, et aussi t'intéresser à (e)pool qui permettent de gérer BIEN BIEN plus de clients que ce code merdique :p Je sais bien mais je n'ai pas encore appris à gérer pool() , donc je vais m'orienter sur du select / threading sans pool() mais il y a plein de façon différente de faire , à la fin c'est limite embrouillant... 1. Asyncore - threading 2. Select - threading 3. framework python : Twisted 4. Le module eventlet - socket Il doit y en avoir encore d'autre... 
"Il existe deux choses infinies : l'univers et la bêtise humaine" Einstein. PHP/MySQL (POO & PDO) : OK HTML5/CSS3 : OK JAVA : En cours | 
|  | |
| 
					26-06-2013, 12h37 
				 Message : #9 | |
| 0pc0deFR Non-enregistré | RE: Serveur multi-client en python 
		Je vais étudier ça dès que j'ai un peu de temps car c'est super intéressant   Je te mets un +1 car tu le mérites. | 
|  | |
| 
					« Sujet précédent | Sujet suivant »
				 | 
| Sujets apparemment similaires… | |||||
| Sujet | Auteur | Réponses | Affichages | Dernier message | |
| Serveur en IPv6 | Sh4dows | 4 | 2,941 | 11-01-2013, 23h54 Dernier message: Sh4dows | |
Utilisateur(s) parcourant ce sujet : 1 visiteur(s)

 Accueil du forum
 Accueil du forum Liste des membres
 Liste des membres Qui est en ligne ?
 Qui est en ligne ? Recherche
 Recherche Calendrier
 Calendrier Zine
 Zine URL de redirection
 URL de redirection Classement (Top 100)
 Classement (Top 100) Proposez un challenge!
 Proposez un challenge! Hacking
 Hacking Hacking
 Hacking  Spirit of hack
 Spirit of hack Messages: 32 822
 Messages: 32 822 Client IRC en ligne
 Client IRC en ligne 
				






 (0)
 (0) (0)
 (0)