<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Commentaires sur : Créer un serveur TCP multithread en Ruby</title>
	<atom:link href="http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/</link>
	<description>... ou une occasion d'apprendre</description>
	<lastBuildDate>Thu, 04 Mar 2010 07:31:02 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
	<item>
		<title>Par : Yann Lugrin</title>
		<link>http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/comment-page-1/#comment-3069</link>
		<dc:creator>Yann Lugrin</dc:creator>
		<pubDate>Sat, 15 Sep 2007 22:47:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/#comment-3069</guid>
		<description>Bien, je viens de mettre un gem 0.1.1 dont les testes passent sous Windows et Linux.

En fait TServer a été renommé PreFork, je pourrais donc garder ce nom peut-être :D

Sinon, merci pour l&#039;exemple Python, c&#039;est toujours intéressant.</description>
		<content:encoded><![CDATA[<p>Bien, je viens de mettre un gem 0.1.1 dont les testes passent sous Windows et Linux.</p>
<p>En fait TServer a été renommé PreFork, je pourrais donc garder ce nom peut-être :D</p>
<p>Sinon, merci pour l&#8217;exemple Python, c&#8217;est toujours intéressant.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Yann Lugrin</title>
		<link>http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/comment-page-1/#comment-3068</link>
		<dc:creator>Yann Lugrin</dc:creator>
		<pubDate>Sat, 15 Sep 2007 22:33:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/#comment-3068</guid>
		<description>Tu veux parler de gserver pour le premier exemple ?

GServer est dans la librairie standard de Ruby, il fonctionne très bien chez moi.

Si tu parle de TServer, c&#039;est moi qui l&#039;ai écris, mais va falloir que je change le nom car j&#039;avais regardé que dans la base standard de gem si il existait une lib avec celui-ci... Pffff... je manque d&#039;imagination pour ça.

Je voie que j&#039;ai zappé le lien pour ma lib...

http://dev.sans-savoir.net/trac/tserver

le temps de changer de nom, y a un GEM mais les testes ne passe pas sous windows (le trunk du SVN passe lui).

Donc mon serveur est basé sur les Threads, comme GServer, mais il est plus bien :D</description>
		<content:encoded><![CDATA[<p>Tu veux parler de gserver pour le premier exemple ?</p>
<p>GServer est dans la librairie standard de Ruby, il fonctionne très bien chez moi.</p>
<p>Si tu parle de TServer, c&#8217;est moi qui l&#8217;ai écris, mais va falloir que je change le nom car j&#8217;avais regardé que dans la base standard de gem si il existait une lib avec celui-ci&#8230; Pffff&#8230; je manque d&#8217;imagination pour ça.</p>
<p>Je voie que j&#8217;ai zappé le lien pour ma lib&#8230;</p>
<p><a href="http://dev.sans-savoir.net/trac/tserver" rel="nofollow">http://dev.sans-savoir.net/trac/tserver</a></p>
<p>le temps de changer de nom, y a un GEM mais les testes ne passe pas sous windows (le trunk du SVN passe lui).</p>
<p>Donc mon serveur est basé sur les Threads, comme GServer, mais il est plus bien :D</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Yoan Blanc</title>
		<link>http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/comment-page-1/#comment-3067</link>
		<dc:creator>Yoan Blanc</dc:creator>
		<pubDate>Sat, 15 Sep 2007 22:14:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/#comment-3067</guid>
		<description>Pour continuer mon monologue, tes exemples ne fonctionnant pas chez moi :&#039;-/ (oui j&#039;ai fait le code .py avant même d&#039;essayer) tu as fait comment ? tserver a apparemment été renommé en prefork et la dernière mise à jour date de bien deux ans et demi, arrgh une page en jap. Merci.</description>
		<content:encoded><![CDATA[<p>Pour continuer mon monologue, tes exemples ne fonctionnant pas chez moi :&#8217;-/ (oui j&#8217;ai fait le code .py avant même d&#8217;essayer) tu as fait comment ? tserver a apparemment été renommé en prefork et la dernière mise à jour date de bien deux ans et demi, arrgh une page en jap. Merci.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Yoan Blanc</title>
		<link>http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/comment-page-1/#comment-3066</link>
		<dc:creator>Yoan Blanc</dc:creator>
		<pubDate>Sat, 15 Sep 2007 21:19:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/#comment-3066</guid>
		<description>Bon, l&#039;indentation a pêté comme les guillemets. La foule de from twisted donne un peu la nausée, ça rend juste le code en dessous plus &quot;clair&quot;.

Au passage, y&#039;a une faute d&#039;erreur dans le titre.</description>
		<content:encoded><![CDATA[<p>Bon, l&#8217;indentation a pêté comme les guillemets. La foule de from twisted donne un peu la nausée, ça rend juste le code en dessous plus &laquo;&nbsp;clair&nbsp;&raquo;.</p>
<p>Au passage, y&#8217;a une faute d&#8217;erreur dans le titre.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Yoan Blanc</title>
		<link>http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/comment-page-1/#comment-3065</link>
		<dc:creator>Yoan Blanc</dc:creator>
		<pubDate>Sat, 15 Sep 2007 21:11:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.sans-savoir.net/2007/09/15/creer-un-serveur-tcp-mutlithread-en-ruby/#comment-3065</guid>
		<description>Je me suis amusé à faire son petit frère en Python (non pas pour troller, mais juste pour voir le comment c&#039;est possible de faire). C&#039;était très instructif, merci Yann.

#!/usr/bin/env python
import sys
from time import time
from twisted.python import log
from twisted.internet import reactor
from twisted.protocols.basic import LineReceiver
from twisted.internet.protocol import ClientFactory

log.startLogging(sys.stdout)

class Time(LineReceiver):
	def lineReceived(self, line):
		response = &quot;%f &gt; %s&quot; % (time(), line)
		
		if &quot;quit&quot; in line:
			reactor.stop()
		else:
			log.msg(response)
			self.sendLine(response)

class TimeFactor(ClientFactory):
	protocol = Time

reactor.listenTCP(10001, TimeFactor())
reactor.run()</description>
		<content:encoded><![CDATA[<p>Je me suis amusé à faire son petit frère en Python (non pas pour troller, mais juste pour voir le comment c&#8217;est possible de faire). C&#8217;était très instructif, merci Yann.</p>
<p>#!/usr/bin/env python<br />
import sys<br />
from time import time<br />
from twisted.python import log<br />
from twisted.internet import reactor<br />
from twisted.protocols.basic import LineReceiver<br />
from twisted.internet.protocol import ClientFactory</p>
<p>log.startLogging(sys.stdout)</p>
<p>class Time(LineReceiver):<br />
	def lineReceived(self, line):<br />
		response = &laquo;&nbsp;%f &gt; %s&nbsp;&raquo; % (time(), line)</p>
<p>		if &laquo;&nbsp;quit&nbsp;&raquo; in line:<br />
			reactor.stop()<br />
		else:<br />
			log.msg(response)<br />
			self.sendLine(response)</p>
<p>class TimeFactor(ClientFactory):<br />
	protocol = Time</p>
<p>reactor.listenTCP(10001, TimeFactor())<br />
reactor.run()</p>
]]></content:encoded>
	</item>
</channel>
</rss>
