TP,Lumen,Laravel 的一些性能对比

昨天来提问lumen和laravel的一些替换代价的,然后今天就被老大强制要求用tp改写了3个并发量高的接口,用laravel写代码已经快半年了,这么一来确实有点郁闷,所以干脆lumen和tp全部重写了一下,看看3个框架到底是那个性能最优,一些测试结果如下,首先介绍一下代码,1.数据库少量操作(测试的用例都是缓存好的数据)2.主要是redis的存取操作 3.无session,然后3个框架都是无任何优化处理的
1.用户信息接口

TP,lumen,laravel的一些性能对比
tp,时间在18到23不等,取20

TP,lumen,laravel的一些性能对比
lumen 24-29不等,取26,

TP,lumen,laravel的一些性能对比
laravel 57到65,波动较大,取60
2.库存列表接口

TP,lumen,laravel的一些性能对比
19-23左右 取21

TP,lumen,laravel的一些性能对比
26-32不等 取29

TP,lumen,laravel的一些性能对比
58-67不等,取63

结论 tp执行速度最优,lumen次之,laravel则显得有点慢了,几乎是tp执行时间的3倍了,自己之前也没写过任何高并发的项目,没想到用了这么长时间的框架,还是有很大的优势的,不过代价就是,很代码写的很low,很多的都是调原生的类,估计是专注于精简项目了(composer了最新的tp6代码居然只有2.几m,而lumen也要20几m,laravel则接近了60m),lumen感觉配置花了点功夫,代码几乎是可以无缝迁移的,就是不知道还有没有办法继续优化?比如路由缓存和配置缓存之类的,命令都缺失了,没法优化,如果能和tp打个平手也可以啊

总之,代码的优雅性和执行速度应该是永恒矛盾的话题吧

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 10

不能满足的时候,已经是换编译型语言(Java, C++)的时候了

4年前 评论
opcache已开
laravel 
real    0m0.019s
user    0m0.003s
sys    0m0.003s

hyperf
real    0m0.008s
user    0m0.001s
sys    0m0.005s

推荐hyperf, lar用户不需要太多学习成本可以用了

只写接口 用lum比lar好多了

4年前 评论
Epona

200ms以下都没有任何问题的, 有可能你其他js文件或者css文件加载的时间都比这个长,性能对比你需要看压力测试的, 使用ab 或者 wrk 都可以。 单纯浏览器的话,没意义的。

4年前 评论

TP有一点,版本升级比较麻烦,好几次都不兼容

4年前 评论

TP6.0 好像是重写了很多东西;快一点,可能是因为 ,项目不再是模块划分

4年前 评论

@iwzh 对,跟新项目都不容易;

4年前 评论

你忘记swoole了吗? 配上swoole加速,中小型项目里各大框架之间的速度差异可以忽略不计,逻辑代码、带宽、数据库等因素影响比较大

3年前 评论

执行效率可以swoole http加速后再试试!

3年前 评论

TP所有模块都是自己实现的。lar,lumen很多依赖的第三方的库,而第三方库可能会还会在依赖其他库,所以lumen lar会体积较大。 所以TP应该叫轮子全部自己造 lumen lar是轮子的组合工厂

3年前 评论

你直接用Chrome测试也是很牛逼。

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!