问题标签 [nanomsg]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
572 浏览

python-2.7 - 在 nanomsg python 中设置套接字超时

我无法在 PUSH/PULL 模式中的 nanomsg python 上正确设置超时。我使用 set socket 选项函数并传入一个 ctype 对象。两个 set_sock_options 都返回成功。我错过了什么吗?

套接字用于接收和发送,但有无限超时。当我使用 get_sock_option 它返回我刚刚设置的值,所以我的输入似乎有某种效果。

0 投票
1 回答
1453 浏览

zeromq - ZeroMQ/NanoMsg pub/sub vs multicast

I want to implement data distribution application using zeromq or nanomsg or aeron.net or OpenDDS or OpenMAMA, I am little confused , which one is suitable as my requirement is to support 500 to 1000 users and each user can subscribe for atleast 100 topics

this can be handled by using pub/sub pattern or I have to use UDP multicast ?

Also I need to deploy this application on Amazon EC2

0 投票
2 回答
4191 浏览

c++ - NanoMsg (NNG) 和 FlatBuffers 是否适合这个项目?

大声喊出我们应该考虑的更好的东西:

我正在寻找一种非常快速和简单的方法来获取多个程序(例如 5 个) - 每个程序都在私有 OpenStack 云上的不同节点上运行以相互交谈。

  • 数据包将是简短的 C++ 结构(小于 100 字节)
  • 流量会很轻(可能低于 100/秒)
  • 延迟真的不是问题。(朋友之间的几毫秒是多少?) - 我们有很多周期和记忆
  • 消息应该作为发布/订阅客户端/服务器范式完成
  • 库应该是 C++ 友好的。但在 Windows 和 Linux 上都可以工作
  • 稍后我们可能需要额外的语言绑定
  • 我们不希望丢失消息

这是我的第一个想法。但如果你有其他东西可以提供。喊出来。

UDP套接字层的友好包装器:

C++ 结构数据的编码器/解码器:

0 投票
2 回答
561 浏览

nanomsg - 如何在 nanomsg 中为“多播”tcp 指定 tcp 协议

我已阅读:Nanomsg 多播带宽问题

但我不需要真正的多播 IP(例如 239.0.0.0:3000) 我的负载也很轻。所以我并不担心背压。

是的,我可以使用总线范式。但是假设我想先用 pubsub 进行测试。

发送者将什么用作发送到 tcp 的发送到 url 以发送到多个客户端?

(我实际上正在使用下一代 nanomsg):

https://nanomsg.github.io/nng/man/v1.0.0/nng_tcp.7.html

我可以发送到 tcp://*:3000

我可以将订阅者绑定到该地址吗?

0 投票
1 回答
639 浏览

visual-studio - NanoMsg 与 VS2017 的链接错误

我正在尝试在 Windows 盒子上构建一个 nanomsg 下一代( https://github.com/nanomsg/nng )。我正在使用 VS2017。CMAKE 就像一个魅力。

我收到链接错误。我已验证 nng.lib 文件位于:

D:\Source\LinkWareMessageBus\nng\lib

Dumbin.exe 说符号都到位(并且没有编译或链接错误)

链接器/常规/附加库目录为:D:\Source\LinkWareMessageBus\nng\lib

.h 文件读得很好。但我收到以下链接错误:

这些是我的 VS2017 设置(x64 .lib 和 x64 项目)。

在此处输入图像描述

我还在 nng.lib 文件中附加了符号的转储文件。

我怀疑的是 VS2017 没有正确配置以找到 .lib (除了添加链接器/附加库的路径)我该怎么办?

nng.lib 符号


更新

我不再说这很简单。但我确实走得更远,也许你可以帮助越过终点线。即使我告诉 VS2017 在哪里可以找到 nng.lib(路径和名称)。我也尝试将它与 kernel32.lib user32.lib 和其他强制性库一起放入。

好的。我现在不再收到有关 nng_xxxx 符号的错误。相反,它现在抱怨的是 nng.lib 正在寻找的符号。

见下文:

这是来自 VS2017 的链接的详细日志的链接: 详细链接日志

```

```

0 投票
2 回答
1781 浏览

nanomsg - nanomsg (nng) 中的多个发布者和订阅者

如何使用 TCP 传输设置多个发布者和订阅者。我怀疑您没有自动创建网格/总线。所以每个发布者都需要一个唯一的 IP 绑定点,对吗?他们只是让订阅者在单个套接字上连接到每个发布者。

(这在:https ://www.freelists.org/post/nanomsg/does-nanomsg-support-multi-producer-in-pubsub-mode,10 中讨论过)

这基本正确吗?

我倾向于使用 pub/sub 而不是总线/网格方法的原因是因为(我承认我很可能弄错了)-

  • 我不需要完全连接的网格
  • 我认为您在每个节点上的基数树过滤比我想出的要好
  • 我喜欢 pub/sub 的“自动发现”方面,而不是为总线传输手动连接网格
  • (即自动“进入和退出网格”)

基本上我有 2 个生产者(主要做发布,但偶尔会收到将附加信息放在正在发布的流上的请求,所以他们确实需要收听)然后大约五个消费者主要从发布者,但确实需要偶尔向生产者发送请求。

是的,我希望 pub 以及订阅的 recv() 是异步的(在我使用它的上下文中不允许阻塞)。

所以这是一个双向发布/订阅架构。我正在寻找实现这一点的最简单方法。(交通很轻)。


当然,UDP 传输对此会很好,但我不会屏住呼吸。

0 投票
1 回答
414 浏览

linux - 如何设计对 nanomsg 套接字和 tty 或 Netlink 的异步处理?

如何编写一个主循环(在 C for Linux 系统中)在等待来自多个源的消息时阻塞,例如
a)一个 nanomsg 套接字和串行端口,或
b)一个 nanomsg 套接字和 Netlink 套接字?

从哪儿开始?

我想我可以轮询 nanomsg 套接字,然后轮询串行端口,然后休眠例如 0.1 秒,但如果可能的话,这是我想避免的模式。

0 投票
2 回答
395 浏览

nanomsg - Nnanomsg 总线路由支持?

我一直在使用 NNG (C++) - 现在我需要编写一个 C# 插件来读取 NNG NanoMSG 消息。但我正在从 pub/sub 转向总线/网格协议。例如

https://nanomsg.org/gettingstarted/bus.html

  1. nnanomsg 支持吗?
  2. 插座上的什么开关(我需要的选项)例如NN_BUS?NN_SOL_SOCKET?
0 投票
1 回答
252 浏览

c++ - QSocketNotifier 与 nanomsg

如果收到任何数据,是否可以将 QSocketNotifier 用于 nanomsg 套接字以执行某些操作?我尝试使用此代码,但运行时没有任何反应nanocat --req --connect ipc:///tmp/node0.ipc --data pong --format ascii。我什至不知道如何检查问题发生在哪一步,因为没有错误。

0 投票
1 回答
328 浏览

javascript - node-nanomsg - 订阅者不接收消息

我有两个.js文件 -pub.js用于发布和sub.js订阅。这些文件实际上是node-nanomsg GitHub 站点上显示的示例的“拆分”版本。pub.js写入和tcp://127.0.0.1:7789读取sub.js相同。我sub.js先开始,然后pub.js。虽然pub.js很快完成,但sub.js从未收到消息。

pub.js

sub.js

更新

如果pub.js写如下并sub.js首先启动,则通信通过。

但是,发布-订阅范式不需要发布者和订阅者相互了解。如何启用 pub-sub 系统nanomsg