laravel 5.1 做的网站,没什么业务逻辑,感觉很慢啊!

laravel 5.1 做的网站,没什么业务逻辑,感觉很慢啊!

阅读 5.3k
5 个回答

应该从这几个方面入手去考虑问题

  1. 网页加载内容包含

    • 服务器主文件(你请求的url地址)
      这个文件的加载关系到服务器性能, 也就是包含框架的性能, 服务器性能/反应速度, 数据库的读取速度(mysql优化, 数据库查询), 网络, dns解析速度

    • 服务器资源文件(通过主url地址加载的css,js,图片,css用到的图片,字体文件等)
      这个是资源文件, 一般和服务器性能没有太直接的关系, 是将资源文件直接加载到你的机器上, 没有经过任何php 的处理, 这个慢不能归咎到php 身上.这个和 IO, 网络, 服务器响应是有关系

  2. 关于第一个服务器主文件的加载速度分为以下几个部分解析, 我们打开谷歌的network调试分析下, 这个是我本机的速度 laravel 5.1.35 , 未做任何缓存(optmize,route cache)

clipboard.png
这里的内容包含详细见 understanding resource timing
连接初始部分: 客户端队列/客户端延迟/代理请求初始
服务器响应部分:请求发送/ ttfb(服务器等待)/ 内容下载

我们看到的这里的ttfb 便是我们服务器的响应速度, 里边包含

  1. 服务器对PHP的处理(php处理/解析速度)

  2. php处理过程中对文件的io加载(磁盘读取速度)

  3. 框架解析速度
    你提的问题应该是第二个步骤的第三个小问题, 框架解析速度, 其中对框架的解析可以有以下几个优化方式

优化命令

php artisan route:cache   # 路由缓存
php artisan optmize --force       # 程序加载优化

优化对比:
优化前:
clipboard.png
优化后:
clipboard.png

  1. 希望答疑

业务逻辑是自己写的呀,laravel只一个豪华的房子,装修要靠自己。
慢的话是不是没有各种cache:
artisan config:cache
artisan route:cache
artisan optimize
composer dumpautoload
。。。

网站的瓶颈在io,php性能问题基本可以忽略。
网站的瓶颈在io,php性能问题基本可以忽略。
网站的瓶颈在io,php性能问题基本可以忽略。

慢,你要去定位“慢”在哪里,性能瓶颈是什么。

可能是前端渲染慢
可能是网络慢
可能是你的服务器慢
可能是你的程序有问题
可能是你的SQL慢
可能是你系统设计的问题
可能是你的数据库慢
可能是你的服务器磁盘渣

不要慢就把责任怪到PHP上面。

支持 @jock 一般慢都不是因为框架,而是自己不会使用,框架能开放出来,一般都是经过N多次的修改与维护了

不知道你说的是哪里慢,问题都没说清楚,没法帮助到你

推荐问题
宣传栏