On 8/17/2010 4:02 AM, Pieter Hintjens wrote:
Well, the question makes more sense now but (excuse my poor tired
brain), there are still aspects escaping me.

Do you want the second thread to take over the socket?  Do you want to
fair-share incoming connections so that one thread gets half of the
connections, and the second thread the other half?  Do you want each
thread to get all the connections but then fair-queue messages between
the two threads?
In the context of up/downstream, I want the /context/ to take the connections and fair-queue messages between the consumer threads.
And, sorry to be stubbornly stupid, I still don't see why you actually
need to reuse the same address rather than a second one.

Oliver, could you explain what semantics you expect by "multiple
threads servicing the same socket?"
I have two groups of threads either side of a connection. Maybe its 4 on the left and 16 on the right, or maybe 16 on the left and 4 on the right. Maybe it's dynamic.

Problem is, someone has to bind the address for anyone to be able to talk to it.

See the attached diagram (sorry for slopping drawing, no mouse :-)

Circles = endpoints, oblongs = workers.

Right now, to implement the "mid" endpoint, you either need a device or a device-like concentrator (a worker that binds an address and allows the workers on the right to connect to it, and then forwards messages from the left to the right).

Which is, essentially, duplicating lots of work.

- Oliver

<<attachment: workers.jpg>>

_______________________________________________
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
http://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to