
Dans le cadre du projet FreeRDS, j'ai eu à créer un petit programme bouchon faisant office
de SessionManager pour tester des développements. La communication entre FreeRDS et le SessionManager
se fait en protocol buffer, j'ai donc regardé du coté du binding python.
Protobuf
Rien de magique dans protobuf, il s'agit juste d'une (nième?) manière standardisée de sérializer des données.
Je vais faire mon vieux de la vieille mais ça ressemble quand même furieusement à du CORBA sans la partie réseau
(ce qui est d'ailleurs un peu embêtant, nous verrons ça plus tard).
On décrit des messages dans un fichier .proto, on passe un compilateur dessus qui va générer du code pour
lire et écrire les messages. Le truc bien c'est que le compilateur propose plein de langages de sortie.
En pratique
C'est bien beau de pouvoir écrire des messages mais si vous êtes sur ce blog, vous vous doutez bien
que c'est pour transporter des paquets sur le réseau. Voici donc quelques extraits de code python
Lire la suite…