Laravel 到底能慢到什么程度?

2018-01-04 19:25:46 +08:00
 Tairy

上半年把公司的项目用 Laravel 重构了一把,下半年流量大了之后线上 CPU 狂报警,网上都说 Laravel 慢的不行,求问有经验的大神,Larvael 到底能慢到什么程度,心里好有点谱。

感觉又要重构了,😭😭😭!

28907 次点击
所在节点    PHP
91 条回复
gclove
2018-01-04 20:28:46 +08:00
@Tairy 感觉要达到你描述的效果,至少要很多的请求流量啊。

所以什么业务 和 流量的状况能说一下吗
zn
2018-01-04 20:30:06 +08:00
哈哈,重构换用 symfony 4 吧骚年,全宇宙最快的重量级 PHP 框架之一哦。
tomczhen
2018-01-04 20:32:47 +08:00
毫无营养的问题,换成任意一种框架和语言都行。

架构,业务规模,初步性能分析,监控数据、日志,就这些都没有,难道靠“感觉”优化吗?
Tairy
2018-01-04 20:34:24 +08:00
@tomczhen 提问的时候没写太多,只是想找找看有没有相关经验的朋友,之后回跟进相关的信息的。
des
2018-01-04 20:36:52 +08:00
@Tairy 你搜索一下,网上介绍这个的文章多如牛毛,虽然都是相互抄的
TangMonk
2018-01-04 20:39:10 +08:00
每秒 3000 已经很不错了好吧,还嫌不够就集群啊
Tairy
2018-01-04 20:41:16 +08:00
@TangMonk 现在跑 13 台机器,有 8 核 8 G,8 核 16G 和 16 核 16 G 三种配置。
TangMonk
2018-01-04 20:43:53 +08:00
@Tairy 13 台机器确实有点慢了,是不是有数据库锁或者其他阻塞操作?
Tairy
2018-01-04 20:45:53 +08:00
@TangMonk 数据库层倒是没多大问题,因为我们搜索业务比较重,所以大量的查询都走到搜索引擎,这块用的是阿里云的 OpenSearch,猜想可能是瓶颈之一。
TangMonk
2018-01-04 20:47:54 +08:00
@Tairy 你给服务器装个 APM 监控一下性能试试,用国外的 newrelic 或者国内的 OneAPM,可以看到很详细的性能数据
nicevar
2018-01-04 20:49:17 +08:00
刚给公司解决了瓶颈问题,重点还是数据库查询这一块,榨干每一个地方,用重型框架就是这样,业务没上来的时候看似没什么问题,一旦上来了问题就凸显出来了,加上有些同事写代码的时候不考虑性能,为了省事用现成的查询封装就为了取一两个字段而不去重新写查询逻辑,非常浪费资源
TangMonk
2018-01-04 20:50:22 +08:00
@zn symfony4 还有些必要的 bundle 没有升级过来
l57t7q
2018-01-04 20:57:51 +08:00
我这里 api 日访问量大概有 800w,单机无压力
Tairy
2018-01-04 21:00:40 +08:00
@l57t7q 单机啥配置啊大哥。
ghostsf
2018-01-04 21:03:05 +08:00
既然集群,索引,缓存都搞了,那么主要就是要 review 代码,优化数据库操作了。检查下代码里,哪里处理数据,查询数据库很慢,然后拿出来分析优化下。
defunct9
2018-01-04 21:04:14 +08:00
开 ssh,上去看看👀
deepkolos
2018-01-04 21:05:17 +08:00
xdebug 有可以找性能瓶颈
MeteorCat
2018-01-04 21:16:17 +08:00
这框架就这样,排查下是不是数据库问题,select 是不是没用的都给*查询出来,还有看下第三方是不是加载过多了,这框架量小没啥问题,量大的时候分分种让你哭死
Fishdrowned
2018-01-04 21:16:42 +08:00
让我告诉你 laravel 是怎么慢的,以及我是为什么抛弃它的:
https://github.com/phwoolcon/phwoolcon/wiki/%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%BC%80%E5%8F%91-Phwoolcon
dryyun
2018-01-04 21:20:01 +08:00
所以,换个框架吧。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/420124

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX