Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Feb 21 00:23
    EvanBalster opened #1428
  • Feb 20 02:20
    ren-zhihao edited #1057
  • Feb 20 02:14
    ren-zhihao opened #1057
  • Feb 19 00:41
    gdamore closed #1049
  • Feb 19 00:36
    gdamore closed #1056
  • Feb 18 22:51
    stv0g opened #1056
  • Feb 18 02:40
    jonthn closed #1417
  • Feb 17 20:23

    gdamore on master

    remove extraneous comment, set … (compare)

  • Feb 17 14:27
    M1cha opened #1427
  • Feb 16 18:48
    jeikabu opened #1426
  • Feb 12 03:11

    gdamore on master

    prep for 1.4.0 (compare)

  • Feb 08 01:38

    gdamore on v1.4.0

    prep for 1.4.0 (compare)

  • Feb 07 21:54
    gdamore milestoned #1422
  • Feb 07 21:53

    gdamore on bug1421

    (compare)

  • Feb 07 21:52
    gdamore closed #1421
  • Feb 07 21:52

    gdamore on master

    fixes #1421 Failure in tcp and … (compare)

  • Feb 07 21:43

    gdamore on bug1421

    fixes #1421 Failure in tcp and … (compare)

  • Feb 07 21:34

    gdamore on bug1421

    fix test case (compare)

  • Jan 26 06:11

    gdamore on bug1421

    fixes #1421 Failure in tcp and … (compare)

  • Jan 26 05:40

    gdamore on bug1421

    fixes #1421 Failure in tcp and … (compare)

jef-de-busser
@jef-de-busser
If I start the pub connection with listen and the subscribers with dial everything works as expected.
Garrett D'Amore
@gdamore
You have sub both listening and dialing, and pub only dialing.
The dialing sub won't connect.....
While the dialer vs. listener is orthogonal to pub vs sub, it's still the case that dialers can only connect to listeners, and that pub can only peer with sub (and vice versa)
So in your case, as you have one pub, and multiple subs, I'd probably make the pub the listener and the subs the dialers.
However, you could also use both subs as listeners (but on different ports, because only one thing can listen at a given TCP address), and then make the pub dial twice (once to each sub port)
You can use multiple --dial arguments in nngcat btw.
jef-de-busser
@jef-de-busser
Ok, that makes sense.
The 1 subscriber was only for my test setup. In reality I have a setup at the moment with 4 publishers and 1 subscriber (which is why the subscriber is the listener) and I was hoping to extend this in some cases easily to 4 publishers and 2 subscribers all on the same address/URL.
Regarding your remark about multiple --dial arguments, I overlooked that in the documentation. I'll read up on that first.
Thx!
jef-de-busser
@jef-de-busser
The above should have read "The 1 publisher was only for my test setup" obviously...
jef-de-busser
@jef-de-busser
BTW: when using nngcat the dialing sub does report that it's connected:
$ nngcat --sub0 --connect-ipc /tmp/test --format quoted -v -k --subscribe ""
Connected to: ipc:////tmp/test"
Florian Hülsmann
@CBiX
Hi all, is this channel nng related? What can I use as a low latency, possibly UDP based transport? Is there a QUIC implementation for nng?
Cody Piersall
@codypiersall
The real chat happens on Discord now: https://discord.gg/byTJz6
No UDP/QUIC transports are available yet, but there are open issues for both: QUIC: nanomsg/nng#230 UDP: nanomsg/nng#168
Harris Zhu (Zhu Zhenzhong)
@zhuzhzh
I want to write one 1-to-N model (similar to telnet server/client). 1 means one server, N means n clients. clients could connects to server at the same time. N usually is less than 20. what's the suggested protocol?
JaylinYu
@JaylinYu
pub/sub I believe
Harris Zhu (Zhu Zhenzhong)
@zhuzhzh
pub/sub is unidirectional
while telnet is bidirectional
Garrett D'Amore
@gdamore
Req rep.
And I don’t really watch this channel.
Basically one to many is supported with any protocol except pair.
Harris Zhu (Zhu Zhenzhong)
@zhuzhzh
thanks. I will try it.
Cody Piersall
@codypiersall
Req rep, and have the open as many contexts as max concurrent connections. Note that even with contexts, req/rep is still stateless, and you can't rely on a single context to be associated with a single client.
d3571ny
@qdk0901
Is there any API to get remaining messages count in the queue?
Garrett D'Amore
@gdamore
I don’t really use Gitter anymore.
But the answer to your question is no.
Gary Stuart
@gstuartml_gitlab
Hi. I'm new here. If this has already been discussed, please point me to the appropriate location) I'm using NanoMsg for C++. (#include <nng/compat/nanomsg/nn.h> #include <nng/compat/nanomsg/bus.h>). I have setup pair communications, for multiple nodes, and it is communicating fine, provided I send character strings. If I send binary values, I receive matching input until it gets to a 0x00 value, and then all remaining values are 0x00. I have seen that the default mode is binary, but not in all cases. I have not succeeded in verifying this mode. Does this implementation support binary data? Do I need to do something different? Thanks
Nate Kent
@neachdainn
@gstuartml_gitlab This channel isn't really alive anymore - it's moved to Discord
Obei Sideg
@obeis
Is there way to check number of message in message queue or at least is empty in pub/sub pattern?
Michael Riesch
@carlosvalderrama
Hello all, complete newbie here with two questions. 1) Have there been any efforts so far to use USB as transport medium?
And 2) is the nanomsg/nng project wire compatible with projects that base on ZeroMQ (In terms of protocols, I think this should be ZMTP/3.1)?
Garrett D'Amore
@gdamore
No and no. Sorry.
wangfeiily
@wangfeiily
Hi,everyone. Who can compare PIPELINE pattern with PUBSUB pattern ,which one is more stable ?
StudentXie
@StudentXie
Hello everyone, I would like to ask how to use Nanomsg on QT
wangfeiily
@wangfeiily
@StudentXie you can use it With C++ library , it doesn't matter what framework u use
wangfeiily
@wangfeiily
PIPELINE - aggregates messages from multiple sources and load balances them among many destinations.
can anybody tell me how to implement the PIPELINE . I tried many times ,but can't implement multiple sources and multiple destinations.
Garrett D'Amore
@gdamore
Please note that I rarely watch Gitter anymore. The conversation has moved to discord.
It’s really no different than any of the other patterns like req/rep in this regard.
What is confusing?
wangfeiily
@wangfeiily
I'm writing it in java. with pipeline pattern, i can only implement one push node(bind), multiple pull node(connect).
or multiple push node (connect) one pull node(bind).
It's not exactly like what you said on the web
can u help me ?
wangfeiily
@wangfeiily
if u can show me a demo, it would be better
Garrett D'Amore
@gdamore
You need to have multiple bind addresses. Each server for example should bind to its own address. Each client should then connect to each server. (So the client calls connect multiple times.)
You can swap server and client if you like. It doesn’t matter which side does connect and which does bind.
You cannot get many-to-many without having multiple bind addresses though. You can only bind one process to an address at a time (normally- there are some newer ways to get around that but they aren’t supported.)
wangfeiily
@wangfeiily
OK, I got it , thanks a lot.