php框架压力测试

背景

因为公司要开发一个高并发的接口,为了节省服务器资源,所以对一些常见的框架进行调研,判断哪一款性能符合要求

前期准备

  1. 安装压力测试工具(我用的是ab)
  2. 安装框架
    我这里安装了yii2、ci、lumen5.0、tp5、biny框架

进行测试

将每个框架都链接本地数据库,打开缓存,进行两轮测试,分别为纯html页面和数据库运算页面
压测量为并发数20,总量300

测试结果

数据库运维压测结果如下:

框架吞吐量总响应时间(s)单词请求平均等待时间(ms)单次请求平均处理时间(ms)
ci29.5510.152676.82033.841
lumen16.1518.5771238.49461.925
原生脚本54.715.484365.59718.280
yii215.3219.581339.67216.984
tp526.8111.191746.04537.302
biny65.224.600306.63815.332

纯html界面压测结果如下:

框架总响应时间(s)吞吐量单词请求平均等待时间(ms)单次请求平均处理时间(ms)
ci4.03274.41268.78313.439
lumen13.08722.92872.47943.624
原生脚本0.516581.8234.3751.719
tp54.51666.43301.06715.053
yii214.21321.11947.52647.376
biny3.01799.43201.15310.058

结果分析

  1. 原生脚本的抗压能力最强,但是开发效率低下,后期维护成本高,而且,这里只是简单的测试了一下数据库运算,具体项目的差距可能并没有这么大
  2. ci和biny的并发效果是最好的,但是ci版本已经很老了,更新可能是个问题,而biny是腾讯最近开源的框架,在某些地方还存在缺陷,而且,文档也不够友好,目前只有框架中内嵌了官方文档,没有手册,且阅读性很差
  3. tp5的效率虽然比不上上述三种框架,但是性能也还可以,对php7支持很好,问题是框架目录混乱,不利于大型项目开发
  4. lumen和yii2的并发支持都不是很好,但是这两个框架本身功能非常强大,其中yii2对restful接口支持更友好,如果不差钱,还是建议用yii2进行restful接口规范进行开发
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Michael·Ren

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值