您的位置:首页 > 编程语言 > PHP开发

技术文章 | Laravel/Lumen搭建服务器性能测试

2017-08-28 15:40 459 查看
本文来源于阿里云-云栖社区,原文点击这里

一个最简单的服务器,我们至少也要关心服务器的吞吐量、cpu使用率、内存消耗。这篇文章会在上篇文章的基础上,使用搭建好的环境测试这个几个基本指标,分析性能瓶颈,给出可能的解决的方法。最终的目的是在服务器环境中测试oss php sdk的性能。


准备

利用上一篇搭建好的环境(参见 http://click.aliyun.com/m/29352/) 我们写一个最简单的测试代码,
#修改routes/web.php为

Route::get('/', function()
{
return "Hello Laravel!\n";
});


这段代码不和oss有任何交互,只是接受一个请求然后返回 "Hello Laravel !"

我们简单测试一下:



没错,这样我们就完成了测试的准备工作。


测试数据

我在自己的macair上用Apache的ab命令模拟多线程并发请求,测试服务器负载压力,当然你可以采用其他工具。我把Laravel搭建的服务起在一个4核8G的物理机上,对外暴露的域名服务是 http://click.aliyun.com/m/29352/

#这条命令代表client端有100个并发、总共5000次请求发给服务器
time ab -c 100 -n 5000 http://www.test_laravel.com/




通过执行结果我们看到5000个简单返回给用户"Hello Laravel!"的请求花费20多s.

再看处理请求时服务器的cpu和内存状况,



可以看出,内存不是瓶颈,但cpu几乎被吃光。

继续看在主机cpu耗干的情况下, 处理请求的QPS,我们通过从nginx的aceess log中来看:



果然不出所料,QPS(最左侧一列)低到底裤都没有。


分析

这样的结果不敢相信,一开始肯定是觉得自己的姿势不对,google搜索一下发现几乎所有人用Laravel的都是这个问题,QPS上不去,php-fpm耗光了cpu。实在不明白Laravel这样的性能能干什么,虽然我的服务器是个4核8G的菜机,但也不至于差成这样。

展开全文
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐