php client调用python server耗时太长

发布于 2021-12-03 14:49:38 字数 302 浏览 736 评论 11

@andot 你好,想跟你请教个问题:

现在用php客户端调用python的同步server大概要耗时2s,而整个过程会耗时2.6s左右
使用的http://127.0.0.1:8181,传入的参数只有一个字符串,大概有40k左右,而python那边真正执行也只耗时0.5s不到,传输效率有点低啊
我刚刚测试了下,用您以前写的phprpc调用,整个过程不到0.6s

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(11

情场扛把子 2021-12-03 23:24:38

引用来自“andot”的评论

原来是这样,py自带的那个wsgi服务器仅用于调试,因为支持wsgi的服务器有很多,所以通常情况下,直接使用HproseHttpService这个类作为服务就可以了(它是个标准的WSGI app),那个HproseHttpServer 仅用于在没有安装 WSGI 服务器的情况下作为开发调试使用。这部分内容,在文档里写过。

如此安好 2021-12-03 23:24:37

原来是这样,py自带的那个wsgi服务器仅用于调试,因为支持wsgi的服务器有很多,所以通常情况下,直接使用HproseHttpService这个类作为服务就可以了(它是个标准的WSGI app),那个HproseHttpServer 仅用于在没有安装 WSGI 服务器的情况下作为开发调试使用。这部分内容,在文档里写过。

小情绪 2021-12-03 23:24:33

引用来自“andot”的评论

看你的描述,也不是数据解析速度慢的问题。难道是 DNS 解析时间慢?这个我也搞不清楚了。

猫烠⑼条掵仅有一顆心 2021-12-03 23:24:33

用什么http server运行的,改用gunicorn之类的运行试试

牵你的手,一向走下去 2021-12-03 23:24:33

引用来自“wei2011”的评论

用什么http server运行的,改用gunicorn之类的运行试试

南冥有猫 2021-12-03 23:24:31

看你的描述,也不是数据解析速度慢的问题。难道是 DNS 解析时间慢?这个我也搞不清楚了。

多彩岁月 2021-12-03 23:24:30

是调用的时候直接$bytes = new BytesIO($str),然后将$bytes当做参数调用python是吧? 我刚刚试了,好像也没有用,我用pecl扩展里面的HproseBytesIO,能减少一定的时间,大概0.2s左右,但是时间还是很长 我看new BytesIO前后两种调用方式,python端打印出的数据长度是一样的 我感觉是不是跟php的curl调用有关?

海之角 2021-12-03 23:24:22

对了,我的curl版本是7.19.7

心舞飞扬 2021-12-03 23:23:50

这样的话,你试试传输时,在 PHP 端使用 $bytes = new BytesIO($str),之后来传输 $bytes,应该可以提高速度。

深巷少女 2021-12-03 20:31:09

我这个结果就是在安装了pecl扩展后得到的,我把so扩展去除后,二者的时间基本一样

自此以后,行同陌路 2021-12-03 17:49:51

问题不在于 python 服务器,你可以在 php 客户端安装上 hprose 的 pecl 扩展。这样就可以高效的传输字符串了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文