问题标签 [zerorpc]
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.
zeromq - ZeroRPC 发布订阅
我想在我的服务器之间建立一个基于事件的系统。例如,当包装我的数据库逻辑的服务器更改状态时,我希望它通知我的其他服务器。发布/订阅设计似乎很适合这个,我听说过有关 ZeroRPC 的好消息。
有些人提到使用 zerorpc 流来完成发布/订阅,但是对我来说,使用流来触发事件如何工作并不明显。
python - 使用 zerorpc 维护会话
如何使用我的zerorpc服务器维护不同的会话或本地状态?
例如(下),如果我有多个客户端,后续客户端将覆盖模型状态。我认为每个客户端都有一个 ID,并且 RPC 逻辑会尝试以这种方式分离变量,但是 tbis 似乎很混乱,一旦客户端断开连接,我将如何清除旧状态/变量?
服务器
客户 1
客户 2
python - 如何配置 ZeroRPC 和超时
我正在尝试使用 ZeroRPC python 服务器和 node.js 客户端进行一些简单的负载测试。我注意到,如果请求花费的时间超过 10 秒,我将不会收到任何数据。我尝试在python代码中配置no heartbeat:
以及尝试配置 node.js 客户端:
但仍然看到相同的行为。
如何获得超过 10 秒的请求才能返回结果?
python - Python/Node ZeroRPC heartbeat error
Im trying to run the Python server/node.js client HelloWorld example from the ZeroRPC website. All the revelant libraries seemed to have been installed correctly, but when running the example I get the error:
Has anyone seen this?
python - zeroRPC 多处理的奇怪问题
因此,我正在使用 ZeroRPC 和 Tornado 进行一个宠物项目,并且在将 ZeroRPC 与python
的多处理库结合使用时遇到了一些问题。具体来说,我正在以编程方式创建和运行新的 ZeroRPC 服务器,但通常在运行时,zerorpc
服务器会阻塞,所以我的想法是将它扔到另一个进程中,如下所示:
但是,当我这样做时,调用RPC
服务器只是挂起,这是未正确实例化端点时的典型行为。但是,如果我只是让服务器运行阻塞并像这样调用它:
一切正常。我的理解是这两个实现应该是等价的,但不知何故它们不是。
有任何想法吗?
python - django <-> node.js 快速通信
我试过requests
了,但似乎很慢,因为 tcp 连接需要很长时间(我不知道如何保持套接字打开)
我现在正在尝试zerorpc
,它有persistent connection
.
Django <-> node.js 通信对于第一条消息工作正常,但Lost remote after 10s heartbeat
在第二次尝试时失败并出现错误。
我可能遗漏了一些明显的东西。
其他客户端(来自命令行)仍然可以与服务器对话并获得响应,所以我想这与上面的 django 代码有关。
django - zerorpc 在多线程环境中?
我想使用 zerorpc 作为内部服务通信工具。
似乎 zeromq 可以完美地用于多线程环境。 http://augustl.com/blog/2013/zeromq_instead_of_http/
然而 zerorpc 文档或教程真的很少。
我正在尝试在多线程环境(Django)中使用 zerorpc 并坚持弄清楚如何使用 zerorpc 重用已连接的套接字(或套接字池)。
有明显的解决方案吗?
python - nodejs 和 Python 之间的 ZeroRPC 仅第一次运行
我们正在尝试使用 ZeroRPC 从 NodeJS 调用 python 模块。
节点代码:
Python代码:
首先,我们运行 python 代码来启动服务器。接下来我们启动 nodejs 代码。
现在第一次在浏览器中尝试 localhost:8080/topList,nodejs 向 python 发出请求,然后 python 程序运行并将结果返回给 nodejs,然后在浏览器中我们可以看到结果。
如果我们第二次尝试 localhost:8080/topList 就会出现问题,nodejs 无法调用 python 代码。我们在 python 控制台中没有看到“Python Hello”。
我们无法修复这种情况。它只是第一次运行,然后 nodejs 无法调用 python。第一次运行后服务器是否关闭。
我们还尝试使用 While True 或 gevent ,如下所示。但仍然是同样的问题。
谁能提供一些想法来解决这个问题?
python - zeroRPC:发送响应后继续运行进程
我正在使用 Python 2.7 和zeroRPC使客户端和服务器进行通信。我希望客户端向服务器发送请求,并且我希望服务器发送响应以确认它已收到请求。但是我希望服务器对该请求执行一些繁重的计算。这些计算将花费数小时并且不会产生任何响应,因此客户端不应一直等待;客户端-服务器连接应在服务器确认已收到请求后立即终止。我怎样才能做到这一点?
这是我现在拥有的(简化)。
服务器代码:
客户端代码:
它不起作用:我得到zerorpc.exceptions.LostRemote: Lost remote after 10s heartbeat
. 我知道我可以使用该heartbeat
参数使连接无限期地持续,但正如我所说,计算将花费数小时并且不会产生任何响应,所以我认为我不应该保持连接有效。
我读过关于 gevent 的文章,但我不知道如何将它用于此目的(它甚至是适合这项工作的工具吗?)。我应该使用 Python 的多处理包来生成子进程或类似的东西吗?如何处理这种事情?
node.js - Zerorpc 在 recv 上抛出错误
我在 Ubuntu 12.04 中使用 Python 2.7.3 和 Node.js 0.10.37,并使用 zerorpc 从节点 js 调用 python。我的 python 在端口 9004 运行,节点客户端侦听 9004 端口。在从 Node js 调用 python 中的方法时,我收到以下错误:
我的 Node.js 客户端代码:
我的 Python 代码:
甚至 python 中的 print 语句也没有被执行。
我尝试卸载并重新安装 zerorpc 和 zmq。但仍然是相同的错误,相同的代码在具有相同架构的不同 Ubuntu 机器上工作。