gpt4 book ai didi

python - celery 任务中的grpc超时

转载 作者:太空狗 更新时间:2023-10-29 21:06:33 28 4
gpt4 key购买 nike

我正在尝试在 celery 任务中连接到 GRPC 服务器。我有以下一段代码

    timeout = 1
host = '0.tcp.ngrok.io'
port = '7145'
channel = grpc.insecure_channel('{0}:{1}'.format(host, port))
try:
grpc.channel_ready_future(channel).result(timeout=timeout)
except grpc.FutureTimeoutError:
sys.exit(1)
stub = stub(channel)

当我通过 Python shell 运行此代码段时,我能够建立连接并执行 GRPC 方法。但是,当我通过 Celery 任务运行它时,我得到了 grpc.FutureTimeoutError,并且没有建立连接。

Celery worker 与 grpc 服务器位于同一台机器上。我尝试使用 socket 库来 ping GRPC 服务器,并且成功了(它返回了一些垃圾响应)。

我使用的是 Python 2.7,安装了 grpcio==1.6.0。 celery 版本是 4.1.0。任何指示都会有所帮助。

最佳答案

我相信 Celery 在底层使用了 fork,而 gRPC 1.6 不支持任何 fork 行为。

尝试更新到 gRPC 1.7。

关于python - celery 任务中的grpc超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47188219/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com