问题标签 [jeromq]
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.
java - Jeromq maximum socket opened issue
I have a server
in java which receive a json
file and send it to a C program by jeromq
. Until last week I just tested it with a few json. I haven't sent a lot of json until now I have another component to send them.
Glassfish
hanged with an error I have never seen before. Something like:
And something related to ZMQ:
I think it could be related to something worng with zmq. If server just receive a few json it never hangs.
I paste my java code, maybe I am doing something wrong or I am not closing something:
First I create a thread to make the zmq sent:
My class to run in background:
}
And the method which sends zmq:
I think it is ok, but since it is failing something related to ZMQ
I am not sure it is ok or not.
java - ZeroMQ 产生微薄的结果
我正在测试 ZeroMQ,我每秒只能收到大约 1227 - 1276 条消息。然而,我读过这些应该超过这个数量的 100 倍。
我究竟做错了什么?我可以指定一些配置来解决这个问题吗?
我正在使用以下功能:
用于限制程序运行时间的计时器类:
编辑:我正在使用 jeroMQ
java - 下载jeromq二进制文件的信誉良好的位置?
在过去 6 个月左右的时间里,我一直在使用jeromq,我正在让一位同事跟上进度。是否有任何信誉良好的位置可以下载 JAR 文件?我拥有的版本是 jeromq-0.3.0-SNAPSHOT.jar 但我一生都记不起它的来源,我想给他一个合法的版本。
(是的,我也可以从源代码构建,但我宁愿给同事一个信誉良好的网站的链接,也不愿从我的计算机向他发送 .jar 文件或强迫他从源代码构建。)
java - ZeroMQ:消失的消息
我们有一个充当服务器的 Java 应用程序。客户端应用程序(用 C# 编写)使用 ZeroMQ 与它通信。我们(大部分)遵循懒惰的海盗模式。
服务器有一个路由器套接字,实现如下(使用 JeroMQ):
客户端连接并发送如下消息:
当多个客户端同时发送消息时,我们会遇到消息丢失的情况。对于单个客户端,似乎没有任何问题。
我们是否以正确的方式实施多客户端单服务器设置?
更新:显示此行为的示例客户端和服务器:
服务器:
客户:
如果我运行服务器和单个客户端,我可以看到所有 100 条消息都到达。如果我同时运行 5 个客户端,我只会收到大约 200 -> 300 条消息到达,而不是全部 500 条。顺便说一句,关闭客户端中的套接字似乎会以某种方式停止服务器上的路由器套接字简短地接收消息,尽管这只是一个理论。
java - 从 ZeroMQ (JeroMQ) 中的新线程内部轮询断言错误
我的代码如下所示:
当我直接调用它时它工作正常:
但如果它在新线程中运行,它会经常因断言错误而失败:
我得到的堆栈跟踪如下所示:
我正在使用带有 JeroMQ 0.3.5-SNAPSHOT 的 Java 8
zeromq - JeroMQ:连接无法可靠恢复
我有两个应用程序,在两个方向上异步发送消息。我在两边都使用 ZMQ.DEALER 类型的套接字。连接状态还由心跳控制。
在连接问题(线路故障或一侧的应用程序重新启动)后,我现在无法使连接可靠地恢复。当我在服务器端重新启动应用程序时(执行bind()的端),客户端并不总是成功重新连接,然后需要重新启动,特别是当本地缓冲区达到HWM限制时。
除了在心跳失败或 send() 返回 false 的情况下重置完整的 ZMQ.Context 之外,我没有找到任何其他方法来使连接恢复可靠。然后我将调用 Context.term() 并再次创建 Context 和 Socket。这在我的测试中似乎运行良好。但现在我观察到 Context.term() 中偶尔出现挂断,这种情况很少见且难以重现。我知道,创建上下文应该只在应用程序启动时完成一次,但正如我所说,我没有找到其他方法来重新建立断开的连接。
我正在使用 JeroMQ 0.3.4。下面是一个测试应用程序的源代码,大约 200 行代码。
非常感谢任何解决此问题的提示。
java - Jeromq/ZeroMQ 服务器 (windows) - 客户端 (android) 测试
我正在尝试使用一个不起作用的简单应用程序对 Jeromq 库进行测试。
这是服务器:
导入 org.zeromq.ZMQ;
因此,启动它后,我有一个日志-“已启动”。192.168.56.1 是我的本地 IP 地址,而 netstat -na(我在 Windows 上工作)显示 192.168.56.1:5570 正在监听。所以,我想没关系。我在 Windows 中打开了这个套接字。
然后在android上我写了这个:
连接建立接口:
然后 Connection AsyckTask 建立与服务器的连接:
和 MainActivity 在建立连接时启动测试任务:
这是 TestAsynk 类,用于发送服务器应接收的测试消息并将日志记录到控制台:
但它永远不会记录结果——它没有收到它。问题是我不知道为什么 - 电话(真实设备)和带有服务器的计算机在一个 WiFi 网络中。而且我还了解到 ZeroMQ 无法确定连接是否真的建立。
请帮我弄清楚。
android - 挂在subscriber.recv() 上的Android 应用程序
我正在编写一个接收连续数据流的 Android 应用程序。我已经在一个可运行对象中设置了连接,如下所示:
现在,经过大量的互联网搜索,我得出了两个结论:
1) recvStr() 是一个阻塞调用,它一直等到它收到一些东西。所以这意味着它没有正确连接或其他东西
和
2)我可能需要设置某种过滤器?
我不知道接下来我应该做什么。非常感谢有 JeroMQ 或 Android 服务器访问经验的人提供的任何帮助
java - JeroMQ 不时产生“IOException。打开的文件太多”
我有一个 tomcat7 应用程序,它使用 IPC 端点和 Java 中的 JeroMQ 与我的另一个应用程序通信。有一个客户端服务器方案,客户端有时会等待来自服务器的响应,如果它没有收到响应,则第一次失败而不重试。
代码如下
现在 MQSocketFactory 类如下所示:
我专门这样做了,所以每个套接字在请求完成后都会关闭,以避免 IOExcpetion Too Many file Open 出现这个特殊问题。但是,我很少遇到这个问题,我不知道为什么。该应用程序可能在几乎相同的负载下工作了几天,一切正常,但在某些时候它开始抛出异常,我不知道为什么。
还有没有办法增加tomcat7中的ulimit?现在是1024。
java - Java中的ZeroMQ端口转发
我有一个用 Java 编写的程序,它应该通过它发送消息,ZeroMQ
以便由我正在运行的另一个程序收听和响应。
问题是侦听器在本地网络上的另一台计算机上,我需要以某种方式执行端口转发,ZeroMQ
以便通过网络接收消息。
运行上述代码时,程序会无限期地等待响应(永远不会出现),因此实际上是无响应的。侦听器正在侦听tcp://127.0.0.1:5570
消息。将其设置为tcp://0.0.0.0:5570
或tcp://*:5570
应该打开侦听给定端口上的所有地址也不会产生任何结果。
任何帮助表示赞赏。