无回复请求的 ZMQ 模式

2023-12-23

我使用 ZMQ 允许客户端连接到服务器并向其发送命令。命令传入的频率很高,不需要任何回复。我正在考虑使用 REQ/REP 套接字,但发送空回复感觉很浪费。我不想使用 PUB/SUB 或 PUSH/PULL,因为我希望客户端启动连接。是否有比 REQ/REP 更适合在这里使用的模式?


(cit.:)因为我希望客户端发起连接。( ? )

人们总是可以让客户端发起连接,因此使用PUSH/PULL可扩展的正式沟通模式似乎非常符合目标,即使有反向.bind()/.connect()打电话,还是有别的意思?

如果仍持消极态度PUSH/PULL(正如到目前为止所观察到的)由于某种其他原因,人们可能会逃避严格的硬连线步进锁定(以及陷入与其本身相关的无法挽救的死锁的风险)REQ/REP
-- first
通过扩展原型XREQ/XREP(有关实现细节,请参阅 API 文档)
or
(如果使用 API 4.2+)
通过解锁REQ-硬连线 FSA 职责通过.setsockopt( ZMQ_REQ_RELAXED, 1 ),鉴于上述事实,REP答案永远不会从服务器端发送/在服务器上处理REQ端客户端。如果走这条路,请务必小心ZMQ_REQ_CORRELATE可能会设置为 1,此时消息将碰巧变成多帧 (d),因为REQ-id#将被加载到新注入的“服务”框架中,之前REQ的客户端有效负载开始传输。这可能会混淆消息接收/处理代码的服务器部分。

对于更勇敢的设计师,可以使用PAIR/PAIR正式模式原型,因为它不会灌输任何严格的正式行为,但请仔细阅读 API 规范。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无回复请求的 ZMQ 模式 的相关文章

  • ZMQ PUB 发送文件

    我第一次尝试 PY ZMQ 想知道是否可以使用 PUB SUB 发送完整的文件 二进制 我需要向许多订阅者发送数据库更新 我看到了短信的示例 但没有看到文件 是否可以 出版商 您应该能够使用 zmq 和 PUB SUB 模式将文件分发给多个
  • FFmpeg 使用 sendcmd/zmq 绘制文本和实时坐标

    我想在具有外部实时数据的实时视频源上使用标记来设置 x y 坐标 sendcmd 可以读取文本文件 但不会更新它 因此以后的更新不会执行 只能用zmq吗 如果是这样 我可以使用 zmq 作为单个过滤器 使用绘图文本 而不是使用过滤器复合体吗
  • 如何使用 ZMQ 发送/接收通过 Protocol Buffers 序列化的二进制数据

    我需要在 ZMQ 套接字上发送一个对象 用 GPB 序列化 目前该代码有一个额外的副本 如何直接将序列化数组写入message ts data ABT CommunicationProtocol introPacket Fill the p
  • zmq::message_t发送后可以重复使用吗?

    我正在使用 ZeroMQ 来实现一个玩具通信协议 这是我第一次使用这个框架 库 现在 在我的协议中 某一方发送多个连续消息 所有消息都具有相同的大小 所以 我想 我会避免重新分配它们 而只是尝试用不同的内容重新填充消息数据缓冲区 例如 zm
  • Python 在从函数返回时挂起

    假设我在一个相当复杂的 Flask 应用程序中有两个函数 一个函数调用另一个函数 def dispatch unlock stuff log dis start this routine just sends some data over
  • 如何使用 Zeromq 的 inproc 和 ipc 传输?

    我是 ZERMQ 的新手 ZeroMQ 具有 TCP INPROC 和 IPC 传输 我正在寻找在 Winx64 和 python 2 7 中使用 python 和 inproc 的示例 这些示例也可以用于 Linux 另外 我一直在寻找
  • 为什么 Zeromq 不能在本地主机上工作?

    这段代码效果很好 import zmq json time def main context zmq Context subscriber context socket zmq SUB subscriber bind ipc test su
  • ipc:// 上的 ZeroMQ REQ/REP 和并发性

    我使用 REQ REP 0MQ ipc 套接字实现了一个 JSON RPC 服务器 我遇到了奇怪的行为 我怀疑这是由于 ipc 底层 unix 套接字不是真正的套接字 而是一个事实一根管子 根据文档 必须强制执行严格的 zmq send z
  • ZeroMQ:重新绑定套接字时地址使用错误

    将 ZeroMQ 套接字绑定到端点并关闭套接字后 将另一个套接字绑定到同一端点需要多次尝试 之前的调用zmq bind直到成功失败并出现错误 地址正在使用 EADDRINUSE 下面的代码演示了这个问题 include
  • php-zmq 未显示在 phpinfo() 页面上

    我在 Windows 上使用 Wamp Server 并安装了 zmq 库 当我在控制台上编写 php info 时 我看到 zmq 显示为已安装 zmq ZMQ 扩展 gt 已启用 ZMQ 扩展版本 gt 1 1 2 libzmq 版本
  • ZeroMQ性能测试。准确的延迟是多少?

    我正在使用 zmq 跨进程传输消息 并且我想做一些性能测试来获取延迟和吞吐量 官方网站给出了指南讲述如何运行性能测试 http zeromq org results perf howto 例如 我尝试过 local lat tcp 1521
  • Python ZeroMQ PUSH/PULL——丢失消息?

    我正在尝试使用python with zeroMQ in PUSH PULL模式 发送大小的消息4 MB 每隔几秒钟 由于某种原因 虽然看起来所有消息都已发送 但服务器似乎只收到了其中一些消息 我在这里缺少什么 这是客户端的代码 clien
  • ZeroMQ 多线程:按需创建套接字还是使用套接字对象池?

    我正在利用 ZeroMQ N to N 发布 订阅模型构建一个 POC 在我们的应用服务器中 当处理 http 请求时 如果线程从数据库中提取数据 它就会使用该数据更新本地 memcache 实例 为了同步应用程序服务器集群中的其他 mem
  • 应用程序在 iOS 6 上崩溃:找不到符号:___sync_fetch_and_add_4

    我有一个与 iOS4 和 iOS5 完美配合的应用程序 它使用针对 ARM 的 Zeromq 库的静态编译版本 Apple 拒绝了我的应用程序 因为他们声称它在 iOS 6 下崩溃 尚未发布 wth 在使用 iOS 6 GM 尝试之后 我可
  • ZeroMQ套接字在什么情况下会丢弃或无法传递消息?

    是否有某种规范或其他解释来描述正常情况 对于每种通信类型 您可以预期在 ZeroMQ 套接字上发送的消息不会被 所有 侦听进程接收 例如 我有一个实验程序 它基本上假设所有订阅者PUB套接字接收在该套接字上发送的所有消息 在初始化握手之后
  • ZeroMQ,我们可以使用 inproc: 传输以及 pub/sub 消息传递模式吗

    设想 我们正在评估ZeroMQ 具体来说jeroMq 用于事件驱动机制 应用程序是分布式的 其中多个服务 发布者和订阅者都是服务 可以存在于同一个 jvm 中或不同的节点中 这取决于部署架构 观察 为了玩玩我创建了一个pub sub图案与i
  • ZeroMQ在多线程应用程序中处理中断

    多线程环境下ZeroMQ的优雅退出 规格 带有 c 11 的 ubuntu 16 04 libzmq 4 2 3 示例代码 static int s interrupted 0 static void s signal handler in
  • 多处理与 gevent

    目前我正在使用带有发布 订阅模式的 Zeromq 我有一个要发布的工作人员和许多 8 个订阅者 所有人都会订阅 相同的模式 现在我尝试使用多处理来生成订阅者 它可以工作 我错过了一些消息 我使用多重处理的原因是在每条消息到达时对其进行处理
  • Python 3.6 ZeroMQ (PyZMQ) asyncio pub sub Hello World

    我刚刚开始使用 ZeroMQ 我正在尝试让 Hello World 在 Python 3 6 中与 PyZMQ 和 asyncio 一起使用 我试图将模块的功能与发布 订阅代码分离 因此有以下类设置 Edit 1 最小化示例 Edit 2
  • Python zmq SUB 套接字未接收 MQL5 Zmq PUB 套接字

    我正在尝试在 MQL5 中设置一个 PUB 套接字 并在 Python 中设置一个 SUB 套接字来接收消息 我在 MQL5 中有这个 include

随机推荐