[nanomsg] Re: ZMQ_ROUTER like functionality

  • From: David Robillard <d@xxxxxxxxxxxx>
  • To: nanomsg@xxxxxxxxxxxxx
  • Date: Wed, 17 Sep 2014 17:28:35 -0400

On Wed, 2014-09-17 at 23:48 +0300, Paul Colomiets wrote:
> Hi David,
> 
> On Wed, Sep 17, 2014 at 11:00 PM, David Robillard <d@xxxxxxxxxxxx> wrote:
> > Well, "scalable" and "handled magically by nanomsg" aren't quite the
> > same thing.  In this case, the load-balancing and routing to particular
> > workers is inherently application specific.
> >
> > The system is very scalable (partially by virtue of both servers and
> > workers being multi-threaded with ZMQ-based inproc load balancing), but
> > this particular part of it isn't the sort of thing any network library
> > could do on its own.
> >
> > (The application is a very large database of sorts, fragmented across
> > workers, so workers are inherently not interchangeable since one worker
> > can not store the entire data set)
> >
> 
> Yes, I had a similar case. We discussed it here. The problem is that
> nobody had implemented this as another nanomsg pattern.
> 
> BTW, you can try, if you are proficient with C or Go.

I am good with C.  Since the architecture of nanomsg seems well suited
to extension I was considering this as an option.

I'm not sure how the sender should/would best indicate the desired
destination.  There is no suitable ancillary option, though working with
that is pretty cryptic anyway.

From a user POV, I'd want/expect something like nn_sendto().  Wouldn't
be quite like the BSD one, since the socket would need to be connected
to the destination address, but "sendto" is presumably what anyone
familiar with BSD socket API would go looking for...

-- 
dr



Other related posts: