V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
ray1888
V2EX  ›  程序员

Python 远程 RPC 的选型落地问题

  •  
  •   ray1888 ·
    ray1888 · Jul 5, 2018 · 3110 views
    This topic created in 2857 days ago, the information mentioned may be changed or developed.

    目前在做一个服务平台,是以 Tornado 作为提供给外部调用的。然后 Tornado 接收请求后,把参数传到 Celery 的 Prefork 进程中去进行远程的 RPC 调用(调用另一个平台 [可以理解为服务] )然后返回请求结果,然而目前需要在 celery 的进程中去维护每个服务的 RPC 链接,感觉这样服务的分布式状态会很乱,而且目前在 Celery 进程中去修改一个全局变量来维护 rpc 链接的时候,会出现保存链接的对象数据存在,但是方法丢失的情况。想问问大家,有没有好的方法可以解决这种比较复杂的 Python 异步调用的场景?

    9 replies    2018-07-06 08:58:11 +08:00
    ray1888
        1
    ray1888  
    OP
       Jul 6, 2018
    目前使用的是 rpyc
    laike9m
        2
    laike9m  
       Jul 6, 2018
    试试 grpc 呢
    weyou
        3
    weyou  
       Jul 6, 2018 via Android
    Pyro4 了解一下?
    cbdyzj
        4
    cbdyzj  
       Jul 6, 2018 via Android
    用消息中间件
    niuroumian
        5
    niuroumian  
       Jul 6, 2018 via iPhone
    gRPC 非常好用!服务端客户端语言任意搭配,而且 nginx 原生支持负载平衡
    askfilm
        6
    askfilm  
       Jul 6, 2018
    thrift
    simple2025
        7
    simple2025  
       Jul 6, 2018
    多个服务?直接 http 不就好了吗
    ray1888
        8
    ray1888  
    OP
       Jul 6, 2018
    其实我想解决的目的是在进程里面动态添加 rpc 的链接,或者 python 有类似于 rpc 进程池的实现吗?
    ray1888
        9
    ray1888  
    OP
       Jul 6, 2018
    @chenqh 有一些业务上的原因,只能使用 RPC
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   985 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 18:17 · PVG 02:17 · LAX 11:17 · JFK 14:17
    ♥ Do have faith in what you're doing.