Какие распределенные реестры процессов доступны для Erlang? - PullRequest
11 голосов
/ 16 марта 2011

Я хотел бы составить достаточно полный список библиотек реестра распределенных процессов для Erlang.

Такие библиотеки должны поддерживать базовые операции, такие как register_name(Pid, Name) и whereis_name(Name) (и в идеале registered_names/0). Имена не должны быть ограничены только атомами, и эти операции регистрации / поиска должны работать достаточно надежно с несколькими узлами, участвующими в реестре (пока игнорируя разделы).

До сих пор я придумал global, gproc и nprocreg. Какие другие доступны?

Ответы [ 3 ]

4 голосов
/ 30 марта 2012

Я бы сказал, что riak_core такой.Я использую его кольцо разделов + согласованное хеширование, чтобы найти узел, вместе с локальным экземпляром gproc, чтобы найти точный процесс.Таким образом, я получаю очень хороший баланс между отказоустойчивостью, доступностью и скоростью.

3 голосов
/ 16 декабря 2013

Locker используется в нескольких проектах на wooga для регистрации процессов.

Riak PG - альтернатива pg2 в процессе разработки. Исходный код также служит хорошим примером того, как использовать riak_core.

1 голос
/ 16 декабря 2013

Относительно Riak PG:

В основном это считается "незавершенным", потому что это было результатом некоторых исследований, которые не были проверены в производстве.Вот ссылка на статью Erlang Workshop 13 .

Если у кого-то возникнут какие-либо вопросы, касающиеся Core или использования PG, в частности, я буду рад помочь вам, чем смогу.

...