同样的接口,同样的参数,同样的时间段,请求的时候,有时候几十毫秒,有时候却1秒多
发现main函数浮动非常大,如下图所示,两个请求一模一样,但是main()的耗时,却有百倍的差距
当业务在使用Redis的时候,有时候就会很慢,我写了一段测试代码,复现了这个情况
public function index()
{
$data = [];
$startTime = microtime(true);
$data[] = $startTime;
Redis::set('aa', 3333);
$data[] = microtime(true);
Redis::get('aa');
$data[] = microtime(true);
return json($data);
}
代码非常简单,大部分请求,都是几十ms,但是偶尔会出现1秒多的情况,下面是返回的结果
[
1708932845.55133,
1708932847.131441,
1708932847.137989
]
自己看下你的main函数里各个地方哪里耗时,这个不是webman问题了
我没有写main函数
搜了下webman也没main函数,main()不是链接嘛,你点进去看详情
阿里云redis会自动清理连接,清理后连接会超时
另外,我发现我本地用127来请求,没有这么大的波动。
线上的用了cdn和负载均衡,不知道有没有这个影响
本地一般超级快都是几十毫秒的,跑内网也可以。走外网就慢很多了
和框架没有半毛钱关系的。感觉是网络的波动,垃圾的ssl也有影响
一般是连接时间吧,我请求云数据库有时候也是也要100多毫秒,有时候20多毫秒,连接服务时间占挺多的