Home
Download
Document
Forum
Video
Donate
Source Code
AI 助理
Sponsors
CRMEB
Apipost
腾讯云
微擎
禅道
51Talk
Products
Swoole AI 智能文档翻译器
Swoole-Compiler PHP 代码加密器
CRMEB 新零售社交电商系统
Login
Register
全部
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
发表新帖
用curl后,php代码处理的很快,但是返回的给前端的时间慢,有人知道原因吗
### 用curl后,php代码处理的很快,但是返回的给前端的时间慢 ### Swoole:4.7.0,PHP版本:PHP 7.2.24-0ubuntu0.18.04.10 (cli) (built: Oct 25 2021 17:47:59) ( NTS ) ### 相关代码 ```php //业务代码 public static function testa() { $a_result = UtilCom::http( 'https://piaov33111akuanpv3.tnci.cc/blueimp-md5/2.18.0/js/md5.min.js' ); return static::replyData( $a_result, array(), 'jsonDebug' ); } /** * 接受http请求 */ public static function onRequest( $oRequest, $oResponse ) { $t = microtime( true ); $o_response = new Response( $oRequest, $oResponse ); try { Tnci::initRequest( $oRequest, $o_response ); Tnci::run(); } catch( Throwable $oErr ) { Tnci::exceptionHandler( $oErr ); } $oResponse->isWritable() && $o_response->end(); Tnci::delAll();//清理信息 var_dump( "runtime:" . ( microtime( true ) - $t )); } ``` ### 你期待的结果是什么?实际看到的错误信息又是什么? 看到打出了的runtime都是0.0x的 ![](https://wenda-1252906962.file.myqcloud.com/uploads/202302/26041_63fd76a58d49c.png) 但是nginx和浏览器实际收到的时间是1~2秒,而且这个并发越高时间越久甚至到10秒 ![](https://wenda-1252906962.file.myqcloud.com/uploads/202302/26041_63fd775b6d344.png) 期待的结果是这个处理时间和实际时间相差不大
发布于1年前 · 25 次浏览 · 来自
提问
阿宽
### 用curl后,php代码处理的很快,但是返回的给前端的时间慢 ### Swoole:4.7.0,PHP版本:PHP 7.2.24-0ubuntu0.18.04.10 (cli) (built: Oct 25 2021 17:47:59) ( NTS ) ### 相关代码 ```php //业务代码 public static function testa() { $a_result = UtilCom::http( 'https://piaov33111akuanpv3.tnci.cc/blueimp-md5/2.18.0/js/md5.min.js' ); return static::replyData( $a_result, array(), 'jsonDebug' ); } /** * 接受http请求 */ public static function onRequest( $oRequest, $oResponse ) { $t = microtime( true ); $o_response = new Response( $oRequest, $oResponse ); try { Tnci::initRequest( $oRequest, $o_response ); Tnci::run(); } catch( Throwable $oErr ) { Tnci::exceptionHandler( $oErr ); } $oResponse->isWritable() && $o_response->end(); Tnci::delAll();//清理信息 var_dump( "runtime:" . ( microtime( true ) - $t )); } ``` ### 你期待的结果是什么?实际看到的错误信息又是什么? 看到打出了的runtime都是0.0x的 ![](https://wenda-1252906962.file.myqcloud.com/uploads/202302/26041_63fd76a58d49c.png) 但是nginx和浏览器实际收到的时间是1~2秒,而且这个并发越高时间越久甚至到10秒 ![](https://wenda-1252906962.file.myqcloud.com/uploads/202302/26041_63fd775b6d344.png) 期待的结果是这个处理时间和实际时间相差不大
赞
0
分享
收藏
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
评论
2023-03-07
Rango
这个原因很多,需要你使用一些工具排查,比如 `strace` ,可能有阻塞,也可能是其他,建议提供更多的信息。
赞
0
回复
微信公众号
热门内容
作者其它话题
- 超过max_request自动重启时感觉onRequest比onWorkerStart先运行
- http服务器怎么设置每个请求运行的超时时间
- 用ab测试并发的提示NOTICE ProcessFactory::end() (ERRNO 1005): session[272] is closed
- 开通一键协程后curl带压缩参数获取到的信息是乱码
暂无回复的问答
- CodeGalaxy K3s 轻量集群节点之间如何实现负载均衡
- 关于openssl CURL WARNING swSSL_connect: SSL_connect(fd=69) failed. Error: error:141A318A:SSL routines:tls_process_ske_dhe:dh key too small[1|394]
- 多个模型如何进行事务异常回退?
- websocket开启wss报错
- 协程tcp服务器如何使用多进程?recv()方法接收信息,打印出来的pid一直是同一个。没用使用到多进程啊。