【轻知识】phper对yaf、laravel压测以及medoo跟Eloquent ORM的对比

压测

一个接口三份代码(laravel一份。yaf两份分了两个分支),分别压测。目的是看下medoo类库(轻量数据库框架)跟orm的差距吧。压测方式参考《构建高性能web站点》。1000个请求,并发递增。

接口内容,连表查商品。商品再拉取库存接口。

测试机器配置

机器配置

yaf(medoo类库)

yaf_medoo.png

yaf(Eloquent ORM laravel操作数据库的)

yaf_orm.png

laravel框架

laravel.png

结果

yaf(medoo)>yaf(Eloquent ORM)>laravel 。不压测也知道是这个结果。

1000个访问100个并发时,我观察了下cpu

laravel

image.png

yaf-orm

image.png

yaf-medoo

image.png

测试时注意

  1. 安装Eloquent时参考下面的资料了。

有一行代码$this->config->database->toArray()是传数据库配置的。我直接删了。传了一个数组进去,键名一定是Eloquent对应的。可在vendor/illuminate/database/README.md说明文件中找到(其实你用过laravel就顺手了,更好设置了)。

  1. ab的使用

ab -p getproductlist.params -T application/x-www-form-urlencoded -n 100 -c 100 http://xxxx.com/ProductList

getproductlist.params 文件 中id=173

如果支持json传参的话 Content-Type:application/json ,文件内容变成{"id":173}

参考资料

《Medoo》https://www.jianshu.com/p/0e552d70155e debug 方法方便查看sql语句。
《Yaf集成Eloquent》https://www.jianshu.com/p/72cb2f81a76a

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 原文链接 必备品 文档:Documentation API:API Reference 视频:Laracasts ...
    layjoy阅读 12,727评论 0 121
  • yaf是鸟哥用C语言编写的一个PHP框架,yaf文档地址:http://yaf.laruence.com/manu...
    jsyzchen阅读 5,895评论 0 7
  • # 一、框架概述 # 课程概述 1. laravel 4天(之前TP框架还是很大的区别)(国外框架) 2. 在线教...
    关进一阅读 3,138评论 0 0
  • 1、目的清晰、找准方法、积极行动。 2、做大概率会赢的事,不纠结每件具体事的具体成果。 3、表达、沟通最重要,不断...
    JohnnyLoveIris阅读 1,261评论 0 0
  • 文/邱晨 ╲本篇属狗屎文,智慧不够慎入╱ 开脑洞”者如同盗墓者,都是在平淡无奇里, 运用明锐的才华眼,发现无限瑰丽...
    懒爷邱阅读 3,008评论 1 3

友情链接更多精彩内容