Sp4ce.net
Serveur IRC en Erlang
Pour un projet scolaire à Télécom ParisTech, j'ai réalisé un serveur IRC avec le langage de progammation Erlang. Le serveur est loin d'être complet mais il est fonctionnel avec des clients usuels tels que Xchat ou mIRC. De plus il constitue une utilisation intéressante du langage Erlang pour sa faculté d'être mis à jour sans redémarrer.
Erlang
Erlang est un langage assez peu commun mais très pratique. vous pourrez trouver des infos sur l’inévitable wikipedia. De mon point de vue, j’ai bien aimé Erlang pour deux raisons. premièremenent, il ressemble à CamL, un langage que j’apprécie, pour le fonctionnement par “match” sur les expressions. Et deuxièmement, LE point fort d’Erlang est que le développeur a le pouvoir modifier le code, et d’appliquer directement les changements sans devoir relancer le module.
Cette faculté est bien adapté à l’irc. En effet, si vous avez des clients (utilisateurs) connectés à votre serveur et que vous devez faire une modification sur le serveur. Vous pouvez donc mettre à jour votre serveur sans qu’aucun client ne s’en rendre compte et ne soit déconnecté. Cela assure une grande stabilité du serveur.
IRC
Internet Relay Chat permet de discuter sur le net par un systême de channel qui sont des sortes de salles de rencontre. on peut ainsi avoir plusieurs utilisateurs qui discutent tous en même temps. IRC est assez vieux, mais c’est un protocole de communication qui a aussi évolué. la dernière rfc concernant les serveurs est la rfc2813. J’ai essayé de suivi “au maximum” cette rfc, mais en fait, mon serveur est très simple et donc, on peut pas vraiment dire qu’il la respecte vraiment.
H3. Liens