问题标签 [grpc-python]

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 回答
310 浏览

locust - Locust 调用的请求数多于用户数来模拟参数

我有上面的蝗虫文件。当我使用运行此文件时

和访问localhost:8089

并设置

并开始测试。请求数以每秒 2 次的速度不断增加 在此处输入图像描述

我预计最大请求数仅为 1,因为用户总数和孵化率都设置为 1。我错过了什么吗?

0 投票
1 回答
697 浏览

python-requests - 无法使 gRPC 与 python 请求 rest api 调用一起工作

在连接 grpc 客户端/服务器以侦听休息请求时需要帮助。想要执行一个发布请求

任何帮助深表感谢..

消化器.proto

生成 pb2 文件后。

grpc - 请求工作正常

我的休息/获取请求:

应该返回正确的响应但是我得到

0 投票
2 回答
3768 浏览

grpc - Python gRPC 健康检查

我正在尝试学习 gRPC 并实现与教程中相同的代码。想知道如何向它添加 gRPC 健康检查。

偶然发现了这个,但对如何编写 gRPC 健康检查一无所知。

0 投票
0 回答
399 浏览

python - Python GRPC 记录失败的连接尝试

我有一个用 Python 编写的 GRPc 服务器,我刚刚实现了 TSL 加密。

如果我尝试在没有证书的情况下连接

我在服务器上收到此错误

我已经将记录器设置为写入文件

但我无法记录 grpc 错误。有没有办法以某种方式处理这些错误?

0 投票
1 回答
197 浏览

python - 如何捕获或保存所有 gRPC 流

我正在尝试编写一个 python 客户端来监听 gRPC 流(消防水带)。它不断地流式传输。没有“完成时”。

原型:

在客户端中,我尝试编写以下内容,但由于 Start rpc 未返回“完成”,因此我无法控制 for 循环进行打印(事件)。

有人可以帮我用python代码在超时(2分钟)后处理或捕获rsp中的所有事件,然后在rsp中打印每个事件。

0 投票
0 回答
34 浏览

grpc - 符号数据库中的消息名称冲突。如果我没有在符号数据库中注册消息会怎样?

我正在开发一个从各种外部来源调用多个 gRPC 服务的软件。可能会出现消息名称冲突,因为这些服务可能没有包名称,并且它们可能使用具有相同名称的消息。我不能真正更改 .proto 文件,因为我不是这些服务的开发者。

据我了解,在 Python 的 gRPC 实现中,对于每条消息都会进行一个函数调用,_sym_db.RegisterMessage(<message>)DESCRIPTOR提取消息并将其用作将该消息添加到符号数据库的键。因此,来自不同文件的完全不相关的消息可能会发生冲突,因为 gRPC 会尝试将它们添加到具有相同密钥的符号数据库中。

另一方面,我尝试注释掉_sym_db.RegisterMessage(<message>)自动生成的 gRPC 代码中的所有引用,一切仍然正常。据我了解,这个数据库是用来在第一次导入后按符号引用编译后的代码的,但是即使完全不使用这个数据库,仍然可以进行客户端调用。

谁能确认这是真的还是假的?DESCRIPTOR另外,您认为在符号数据库中使用与消息不同的密钥时提出 PR 是否有意义?像文件+描述符什么的。

谢谢!

0 投票
1 回答
1261 浏览

python - python如何在调用流取消()后处理grpc流

我正在尝试编写一个 python 客户端来终止一个 gRPC 流

原型:

在客户端中,当我准备好终止流时,我尝试调用 stream.cancel(),然后当我打印捕获的流的事件时,它不会打印事件。我看到了例外

客户端.py

有人可以帮我用python代码取消这个流并打印流中的事件吗?

0 投票
0 回答
17 浏览

python-3.x - 如何设置客户端长时间不使用自动关机

我的存根使用了很多方法,我无法在每次使用它们时重新创建通道并关闭它们,而且我无法将它们全部使用,因为它们是随机的。所以我希望我创建的频道在超时时自动关闭。我将为我的根方法创建通道,其他使用根方法的通道,如果不再使用此根方法,我希望能够自动关闭通道,或者如果此根方法不在长时间使用会自动关闭频道

我希望能够让 GRPC 的通道设置过期时间

0 投票
1 回答
268 浏览

python - 如何为 python usign grpcio_tools.protoc 编译 homegraph google api 原型文件?

我正在尝试使用 gRPC 访问google home graph api。在本教程中,我找到了一个关于如何编译 proto 文件以获取一些可供客户端使用的 python 代码的示例。提供的示例生成了一些 python 文件,但它们不可用,因为它们似乎导入了其他不存在的文件。

我用来编译的命令如下: python -m grpc_tools.protoc -I./googleapis --python_out=. --grpc_python_out=. googleapis/google/home/graph/v1/homegraph.proto 编译这个 proto 文件

当我尝试导入生成的文件时,出现以下错误。

很明显,预计还会存在一些其他文件。

有没有办法自动编译我需要的原型的所有依赖项?

0 投票
0 回答
508 浏览

python - 如何删除 GRPC 对象以便多处理工作?

GRPC 不支持python multiprocessing

我想通过从进程进行 GRPC 调用然后关闭通道并删除对 GRPC 对象的所有引用来解决这个问题,这样它们就不会被腌制。

然而,我害怕

是否可以在使用后删除所有 GRPC 对象以便我可以使用多处理?

如果不是,我对 GRPC 和多处理的问题有什么不明白的地方?

代码看起来像这样。如果证明是必要的,我可以创建一个最小的工作示例。