IPC один-ко-многим - PullRequest
       20

IPC один-ко-многим

2 голосов
/ 02 апреля 2012

Я ищу механизм ipc, который позволил бы высокую пропускную способность обновлений данных от одного процесса ко многим (тысячам).

Процесс «сервер» будет отвечать за обновление структуры данных с высокой частотой. После обновления я хотел бы уведомить «клиентские» процессы об обновлении и разрешить этим процессам читать новые данные.

В среде Linux или FreeBSD, что было бы хорошим способом для этого?

Ответы [ 2 ]

3 голосов
/ 02 апреля 2012

Я бы рекомендовал использовать ZeroMQ .Это быстрая, легкая, кроссплатформенная, мультиязычная система обмена сообщениями, которая уже делает все, что вы просите.Это простой в использовании и очень надежный.Он может работать во многих, многих режимах, одним из которых является обмен сообщениями «один ко многим» (это называется широковещательной передачей на языке CS).

2 голосов
/ 02 апреля 2012

Хотя неясно, какие у вас ограничения или требования к настройке (все процессы на одном компьютере?), Похоже, что наиболее универсальным решением было бы использование MPI , который не зависит от платформы и распространяется. В частности, он обеспечивает функциональность вещания .

Недостатком является то, что вам придется немного смоделировать дизайн после MPI API.

...