问题标签 [jzmq]

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 投票
1 回答
630 浏览

java - 在 Java 中使用带有 ZeroMQ 的 SUB 没有消息匹配

我正在尝试将 Java 客户端与 ZeroMQ 一起使用。当订阅任何前缀时,Java 客户端不会匹配任何消息,尽管类似的 Python 客户端会按预期匹配消息。

Python 服务器

Python 客户端工作正常

没有消息匹配的 Java 客户端

XXX使用上面的 Python 服务器,Python 客户端按预期匹配所有以开头的消息。

使用相同的 Python 服务器,Java 客户端不匹配任何消息

您知道subscribe()Java 客户端中的调用有什么问题吗?

0 投票
1 回答
84 浏览

zeromq - ZeroMQ 升级后速度变慢

我们目前正在将 ZeroMQ 从 2.2.12 版本升级到 4.0.5 版本,我们发现自从我们升级后性能明显变差了。

我们有一个相当简单的 DEALER/DEALER 拓扑,具有 1:1 或 1:many 连接。我们正在使用轮询在连接的任一端运行消息泵。

我们正在使用许多不同的绑定(ffi-rzmq、clrzmq、jzmq 和 zmq_cpp)来允许用不同语言编写的组件进行通信。我们所有的组件似乎都存在同样的性能问题。

我们使用环回 (127.0.0.1) TCP 套接字在 Windows 7 下运行。

有没有人对可能出现的问题有任何想法(甚至我需要在这里提供的任何其他信息?)

0 投票
0 回答
383 浏览

java - zeromq 的高延迟

我在使用 ZMQ 时遇到了一个奇怪的问题,我只是无法调试。这些是组件:

ZMQ 套接字使用 TCP,服务器和客户端都在同一台机器上。

PHP 脚本由 apache 提供,我正在使用 apache 基准进行负载测试。我发出 5000 个请求,并发性为 200。在 PHP 客户端上,我记录了请求回复 ( $totalTime) 所需的时间。在大多数情况下,这个时间非常短(低于 500 毫秒),但有时需要很长时间 - 有时甚至 60 秒(发送 + 接收)。

我添加了一些额外的日志记录来找出问题发生的位置,事实证明,每当需要很长时间时,几乎所有时间都在 PHP 的发送和 Java 的接收之间——因此数据包需要很长时间才能到达服务器。

我没有设置任何特殊的 ZMQ 设置,或者做任何不寻常的事情,所以我不知道是什么导致了这个问题。还应该注意的是,即使在较低的并发下问题仍然存在(我也在 100 和 150 测试过),但最大请求时间较短。

抱歉,如果问题看起来含糊不清 - 我会提供可能需要的任何其他详细信息。

0 投票
1 回答
1278 浏览

sockets - Zeromq 哪个套接字应该绑定在 PubSub 模式上

我一直在阅读有关 ZeroMQ 的更具体的 NetMQ 以及我看到的几乎每个 Pub/Sub 示例都用于绑定发布者套接字,然后订阅者套接字连接到另一个。

所以我想知道是否可以做相反的事情,我的意思是绑定订阅者套接字,然后发布者连接到它。

这可能吗 ?(我没有在文档中找到任何明确的内容)使用这种连接策略有什么缺点?

任何帮助都会很有用。

0 投票
1 回答
1558 浏览

java - 错误:java.library.path 中没有 jzmq

我使用自制软件安装了 zmq,然后从 github master 安装了 jzmq。

我收到此错误:

我尝试设置路径:

这些文件在/usr/local/lib

0 投票
1 回答
7514 浏览

zeromq - ZeroMQ:多个套接字的相同上下文

我正在尝试使用 ZeroMQ 的 pub-sub 套接字。zmq::context_t但是,在创建套接字 () 时,我并不清楚上下文 () 的作用zmq::socket_t

假设我要创建 5 个订阅者套接字(zmq::socket_tusing ZMQ_SUB),我是否需要 5 个上下文,每个订阅者套接字一个?或者我可以为所有 5 个套接字使用一个上下文吗?

0 投票
1 回答
552 浏览

java - ZMQ - 具有多个前端服务实例和后端工作人员的请求/响应

这是我想要实现的目标 -

REST 服务(部署在多个实例上)获取请求,对其进行处理并将其传递给一组工作实例。

工人完成更大的工作,准备响应并将其发回。

与此同时,主服务完成了与原始请求相关的更多工作,将其与工作人员响应合并,并在请求连接上将其发送回调用方。

如何通过 ZMQ 对此进行建模?

我试过这样做——创建一个 PUSH 套接字并在服务实例中进行“绑定”。- 工作人员“连接”到相应的 PULL 套接字。- 由于同一个服务实例必须获得响应而不是其他服务实例,因此每条消息都发送到 PUSH 套接字,服务会附加一个响应队列名称。- Worker 接收消息,完成工作并在消息中给出的响应队列上推送(进行连接)。- 服务在它的响应队列上进行绑定,当它收到响应时,做剩下的工作并响应服务调用者。

问题 - - 服务实例中的所有线程都必须进行一些同步以获取 PUSH 队列以向工作人员发送请求。- 在负载很重的情况下,这个单一的 PUSH 队列开始阻塞。- 当我在多个实例上部署此服务代码并绑定到同一个套接字时,事情就会中断。

是否有使用 ZMQ 实现此目标的标准方法?我们决定使用 ZMQ 的原因是如果 worker 是另一个 HTTP 服务(重试、断开连接、连接池等)所需的连接管理更少,并且使用 ZMQ 具有更好的吞吐量。

0 投票
2 回答
684 浏览

java - 如何处理 JZMQ 的错误?

文档Socket#recv()内容如下:

返回: [...] 错误时为空。

我怎么知道错误是什么?我想EAGAIN具体处理。

0 投票
1 回答
2050 浏览

java - 在 /usr/lib/ 中找不到 jni.h

我正在使用 Ubuntu 并尝试安装storm但得到了这个

使用此命令时

JZMQ安装中

我试图configure用 used编辑

但同样的问题

试图编辑bashrc我在文件末尾添加了这一行

但问题仍然存在

openjdk 在这条路上/usr/lib/jvm/java-6-openjdk-amd64

任何解决方案?为什么我得到这个错误?

0 投票
1 回答
153 浏览

java - 用于 Java 的库 ZMQ 不起作用

我正在尝试使用 Java 的 ZMQ 库连接到比特币节点。问题是当我尝试接收响应时,代码仍然冻结。什么都不返回。

这是我的代码:

代码冻结在行中Msg msg = zmq.ZMQ.recv(s, 0);。我正在使用此处描述的调用来实现完整节点。提前致谢!