[Time] Name | Message |
[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
|