[erlang-questions] [ANN] Syn 1.0.0 & PubSub branch

Michael Truog <>
Sun Mar 6 19:32:35 CET 2016


On 03/06/2016 04:24 AM, Roberto Ostinelli wrote:
> On Sun, Mar 6, 2016 at 12:54 PM, Loïc Hoguin < <mailto:>> wrote:
>
>     Cheers!
>
>     What would you say would be the advantages of Syn over Gproc?
>
>     And for process groups over cpg?
>
>
> Hello Loïc!
> I wrote an article with comparisons between global, pg2, gproc and cpg which led me to write Syn here:
> http://www.ostinelli.net/an-evaluation-of-erlang-global-process-registries-meet-syn/
>
> TL;DR
>
> Gproc is great! However, to my understanding it's main purpose is not to be distributed. I found instabilities when dealing with Gproc in a distributed environment, possibly because the distributed part is based on gen_leader. The README in Gproc’s Github page clearly depicts it as being an “Extended process dictionary”; it just felt that the distributed part hasn’t been the primary focus in the development of this library.
>
> Ulf has said he wanted to use locks_leader, but the branch is still frozen to some years ago:
> http://erlang.org/pipermail/erlang-questions/2015-February/083176.html
>
> I fear this will take us down the rabbit hole, but here it goes for CPG: I've seen it first hand and I've had reports [1] that it might reach bottlenecks when using a single scope. The author acknowledges and recommends using multiple scopes, however even if I understand them, I don’t care about using them (I feel I shouldn't be dealing with extra complications to circumvent lib limitations).

The other thing you can do with CPG is use cached process lookup data, which avoids contention for the single scope process, with the cpg_data module.  That is equivalent to a lazy destination refresh method (in CloudI) which can provide more scalability https://github.com/CloudI/CloudI/blob/develop/src/tests/request_rate/results/results_v1_5_1/results.txt#L24-L43 .

>
> Hope this clears up :)
>
> Best,
> r.
>
> [1] For instance:
> http://erlang.org/pipermail/erlang-questions/2015-February/083196.html
> https://gist.github.com/AeroNotix/eaad66f121aaa199ca6e
>
>
>
> _______________________________________________
> erlang-questions mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-questions

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20160306/79cbba30/attachment.html>


More information about the erlang-questions mailing list