> I am working on building a distributed system where a bunch of
> workers (can scale to few thousands) are connected to a manager.
> Workers send certain local events to the manager and the manager then
> should broadcast that event to all other workers. Workers shouldn't
> miss any event (for reasons like network issue, or they are rebooting
> etc.).  For now the master high availability is not a serious
> requirement. But would prefer a design that doesn't over complicate
> things when master HA has to be added. master and slaves are fully go
> code and unlikely to change.

Did you consider a system like RabbitMQ[0] as the messaging layer? It
supports all the features you describe including dynamic joining/leaving
of clients.

Client libraries for many languages exist[1], including Go[2].

Regards

Lutz

[0] https://www.rabbitmq.com/
[1] https://www.rabbitmq.com/devtools.html
[2] https://github.com/streadway/amqp

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to