Re: [zeromq-dev] Erlang style messaging

2014-08-30 Thread Pieter Hintjens
On Fri, Aug 29, 2014 at 7:40 PM, Steve Murphy wrote: > However, Erlang does not avoid all problems associated with concurrent > execution. In particular, it provides for interactions and communication > patterns between processes that may be stuck in their execution until > some conditions are me

Re: [zeromq-dev] Erlang style messaging

2014-08-30 Thread Thomas Rodgers
In practice, Erlang apps are more than the base actor machinery and messaging. Erlang has a notion of 'linked processes' where a fault in a linked process is reliably propagated to all linking processes. On top of this they build a rich set of fault tolerant behaviors in OTP, one of which, the su

[zeromq-dev] Concurrent send/receive with a ROUTER socket - efficient and idiomatic solution

2014-08-30 Thread Eyal Arubas
I am implementing a server in Go with a ROUTER socket. In one goroutine, messages are received from the socket, and distributed to workers through work queues (buffered channels). Workers produce some result and queue it to another buffered channel. In another goroutine, results are dequeued and s

Re: [zeromq-dev] Problem compiling czmq

2014-08-30 Thread Pieter Hintjens
Sounds like a version mix up, installed libzmq not matching the version of zmq.h that CZMQ is building against. On Fri, Aug 29, 2014 at 7:42 PM, Steve Murphy wrote: > > latest git pull on both libzmq and czmq, and I get this: > > . > . > . > CCLD czmq_selftest > ./.libs/libczmq.so: undefined

Re: [zeromq-dev] Concurrent send/receive with a ROUTER socket - efficient and idiomatic solution

2014-08-30 Thread Sean Robertson
I ran into this as well and came up with a potentially interesting solution (though probably not idiomatic). What I have is a single "dispatch" goroutine to keep all socket reads and writes in one place. The dispatch interacts with two channels, Requests (in) and Responses (out). On every loop it