Hello, I'm trying to design a pattern that will fit my application but can't find a proper solution. I'd appreciate if someone could enlighten me.
I have a process that deals with sessions (voip calls). This server produce events for every session, e.g.: Session1: start Session1: msgA Session1: msgB Session1: msgC ... Session1: msgX Session1: stop Each event has a session id. Many sessions exist concurrently. And there're multiple workers that consume these events. Single event should go to single worker. (PUSH/PULL like pattern). My initial though was single PUSH (server that produce events) and multiple PULL (workers that consume). My challenge is avoid race condition in processing events, i.e. workers supposed to consume events in the same order as they produced. And this should be done in realtime, I can't serialize at worker side. And single worker is not enough from performance point of view. Is there any ZMQ magic (pattern) that can force all events from single session (based on session id?) to be sent to same worker? This way I'll ensure that worker process events in the same order they appeared. -- Best Regards, Alex Massover
_______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
