Monday July 25, 2011

[Time] NameMessage
[13:17] hogu Is there a way to do a pub/sub pattern but only route certain messages to certain subscribers?
[13:18] pieter_hintjens hogu: depends on how selective you are
[13:18] pieter_hintjens any subscriber can filter the messages it gets
[13:19] pieter_hintjens if you want rough-grained routing you can use multiple pub sockets (i.e. break the data into streams)
[13:19] pieter_hintjens you can also use 0MQ/3.x which does publisher-side filtering
[13:22] hogu i definitely want the filtering to be publisher side
[13:22] hogu i didn't realize 3.0 had that
[13:22] hogu sounds like whati need, thank
[13:22] hogu s
[13:26] hogu so I'm currently doing this with websockets, a client connects, and sends authentication credentials over that socket. then I can route messages to cleints depending on their credentials. Is there a way to do that with zeromq?
[13:28] sustrik pieter_hinjens: still want to make a video?
[13:28] hogu specifically, i mean the ability to have multiple bi-directional channels with one bind?
[13:29] sustrik what's so special about that?
[13:29] sustrik even TCP gives you multiple channels per bind
[13:31] hogu no it's not special, I'm just asking how to do that with zeromq
[13:33] sustrik zmq_bind()
[13:33] sustrik that's it
[13:33] hogu REQ-REP seems close to what I want except I'd like to be able to send data to specific clients without the request
[13:34] sustrik that's sounds more like TCP use case
[13:34] sustrik although if you are interested there are examples of doing this using ROUTER socekts in the guide
[13:34] hogu hm ok , let me look at that
[13:40] pieter_hintjens sustrik: yeah, but I don't have the bandwidth right now, will work on some ideas first
[13:41] pieter_hintjens sustrik: also I realized that if people come to 0MQ for "messaging", that's fine in fact
[13:50] sustrik messaging?
[13:51] sustrik like MOM?
[13:58] pieter_hintjens yeah
[13:59] pieter_hintjens a typical sign of confusion is "let's make an abstraction layer that hides 0MQ"
[13:59] pieter_hintjens this is sane if you treat messaging as a generic layer
[13:59] pieter_hintjens but 0MQ works more like a scalability design language
[14:04] sustrik i see
[14:04] sustrik and the conclusion is?
[14:04] pieter_hintjens sustrik: don't know yet :-) RTFG?
[14:05] sustrik maybe
[14:05] sustrik i guess we don't communicate this side of the problem well yet
[14:05] sustrik i have no idea how to do it though
[14:06] pieter_hintjens there's a big issue with perception
[14:06] sustrik maybe it's just matter of time
[14:06] pieter_hintjens how people perceive communications
[14:06] pieter_hintjens i think the shift will take time
[14:07] pieter_hintjens it's architecture, and that takes years to learn
[14:07] sustrik ack
[14:07] pieter_hintjens time for a 2.1.8 and 3.0.1 IMO
[14:07] sustrik great
[14:07] sustrik any pending issues?
[14:07] pieter_hintjens nope, and some nice fixes in there
[14:07] sustrik ok
[14:08] pieter_hintjens thursday or so, depending on the weather
[14:12] hogu so I'm looking at the router, it looks like i have to use that with request reply patterns? can I get bi directional channels without having to adhere to teh request reply pattern?
[14:13] hogu something like that PAIR except, with multiple connections per bind
[14:13] hogu is this a stupid thing to want?
[14:15] sustrik you can use ROUTER-to-ROUTER pattern
[14:15] sustrik that way each endpoint is able to say which message goes to whom
[14:16] hogu ah ok
[14:16] hogu thanks
[14:17] pieter_hintjens hogu: how much of the Guide have you read?
[14:19] hogu the first 2 chapters
[14:19] hogu and bit of 4
[14:19] hogu i mean 5
[21:28] Kinbote anyone have any luck building openpgm and linking zmq to it?
[21:28] Kinbote i'm trying to use epgm
[21:29] Kinbote i install zmq from source, passing --with-pgm to configure, and it install fine, apparently it downloads and builds openpgm in ./build, but when i try to connect to an epgm socket from code i get this error Assertion failed: rc == 0 (connect_session.cpp:84)
[21:50] dontfudge I'm looking to use epgm in ZMQ. the man page installed give an example of the connect address, but not the bind address. Are they supposed to be the same?
[21:56] samBiotic dontfudge, using pub/sub yes i believe