Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

lightweight cross-platform message queue for IPC [closed]

gcc 4.7.2
c89

I am looking for a lightweight message queue (IPC), that is cross-platform (linux, windows).

I have used msgget, msgsnd, and msgrcv. But this is not cross-platform so wouldn't work on windows.

I don't need any socket layer (tcp, udp). As all the messaging will be on the same server.

Basically, I have an event loop and I will block (separate thread) until I get a message from the message queue (msgrcv). Then process that event. The messages will come from another shared library that I have created that I will monitor events from in my event loop.

I just want to be able to send message to the message queue (msgsnd) and then receive them (msgrcv) in my event loop.

like image 405
ant2009 Avatar asked Oct 06 '22 13:10

ant2009


1 Answers

AFAIK there're two such things: ØMQ and Gearman.

ØMQ is the socket library that acts as a concurrency framework, suitable for asynch I/O for scalable multicore message-passing apps. It supports most OSes including Linux, Windows, OS X.

Gearman allows you to do work in parallel, to load balance processing, and to call functions between languages. In other words, it is the nervous system for how distributed processing communicates.

like image 91
Xiao Jia Avatar answered Oct 10 '22 01:10

Xiao Jia