ZeroMQ (ØMQ)

ZeroMQ est une librairie de communication inter-applications (IPC), TCP, multicast… basée sur les socket ethernet.
Elle est très simple d'utilisation et supporte plus de 30 langages de programmation

Voici la traduction du §To build on UNIX-like systems de la page http://zeromq.org/intro:get-the-software:
“Si vous avez le choix, le système d'exploitation le plus confortable pour développer1) avec ZeroMQ est probablement Ubuntu.” :-D

  • Assurez-vous que les librairies suivantes sont installées:
sudo apt-get install libtool pkg-config build-essential autoconf automake installed
  • Vérifiez que uuid-dev package, uuid/e2fsprogs RPM ou équivalent sont également installé:
dpkg -l e2fsprogs
tar xvfz zeromq-4.2.1.tar.gz
  • Compiler:
./configure
  make
  • Installer ZeroMQ:
sudo make install
  • Enfin (dans tous les cas) lancez:
sudo ldconfig
  • Installer aussi:
sudo apt-get install libzmq-dev

Pour voir les options de configuration, lancer:

./configure --help

Lisez INSTALL pour plus de détails

Dans un répertoire de tests ou de développements, le répertoire workspace pour la suite, récupérons les exemples avec git:

git clone --depth=1 https://github.com/imatix/zguide.git

Dans un premier terminal, lançons un serveur:

cd ~/workspace/zguide/examples/C++
g++ hwserver.cpp -std=c++11 -lzmq -o hwserver
./hwserver

Dans un second terminal, lançons un client:

cd ~/workspace/zguide/examples/
python hwclient.py

Le client envoie des requêtes "Hello" au serveur qui va lui répondre "World"

Il est défini ci-dessus un serveur en C++ et un client en Python mais vous pouvez évidemment utiliser le même langage pour les deux, d'autres langages pour l'un et l'autre…

Un autre exemple intéressant pour débuter est le psenvpub (publicateur⇔publisher) et psenvsub (lecteur⇔subscriber)


1)
et déployer??… l'installation sous Windows, à ce jour (juillet 2017) est compliquée
  • zeromq.txt
  • Dernière modification: Le 29/11/2017, 14:36
  • (modification externe)