V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
seasona
V2EX  ›  问与答

如何在没办法改动服务器端的情况下,提高客户端的实时查询处理速度

  •  
  •   seasona · 2020-01-04 11:06:22 +08:00 · 1593 次点击
    这是一个创建于 1785 天前的主题,其中的信息可能已经有所发展或是发生改变。

    整个流程大概是:python 脚本通过 socket 对服务器端发送指令,服务器端处理后返回消息,python 脚本 recv 接受后将消息打印。

    问题在于:服务器端其实是一个 gdb,没有办法修改,脚本没有异步需求,只是接受消息后打印,是强实时任务。但是查询速度需求很高,每次发送消息后脚本只能原地停等,如果等待时间过小,会导致发送指令后服务器端返回的消息混乱。如何能够提高整体的查询速度?

    主要逻辑代码:

    sk.send(opAddInfo('vCont;s'))
    time.sleep(0.1)
    ret_bytes = sk.recv(1024)
    
    3 条回复    2020-01-04 13:27:03 +08:00
    opengps
        1
    opengps  
       2020-01-04 11:52:42 +08:00
    前端能代码能控制的太少,能改的只有部署全站加速了
    tomczhen
        2
    tomczhen  
       2020-01-04 12:03:16 +08:00 via Android
    上线前在前端输出逻辑里面加个 sleep,上线后去掉,就能提高速度了。
    wysnylc
        3
    wysnylc  
       2020-01-04 13:27:03 +08:00
    把阻塞变成非阻塞,同步变成异步,单线程变成多线程,没别的办法
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2788 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 13:04 · PVG 21:04 · LAX 05:04 · JFK 08:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.