Home >Backend Development >PHP Tutorial >这个问题我已经纠结很久了:我的服务器和数据库都很不错,为什么网站运行这么慢?

这个问题我已经纠结很久了:我的服务器和数据库都很不错,为什么网站运行这么慢?

WBOY
WBOYOriginal
2016-06-06 20:35:531169browse

各位前辈,请你们帮忙:

服务器是阿里云ECS 1核1G 2M
数据库是阿里云RDS云数据库,速度非常快
系统是CentOS 6.5 64位
服务器是NGINX 1.6.2
PHP是5.4.38 已经安装了OPCache
网站程序是开源CMS,别人的网站基本都是秒开,所以程序没什么问题
我使用阿里云OSS储存静态文件,css、js等,速度也很快
ping一下域名基本都是在50ms
直接访问静态文件只需要100ms,所以Nginx是正常的

可是网站访问时候响应实在太慢太慢了,每点击一下都需要等待4s-5s才能返回结果,所以我坚信是PHP的处理速度太慢了,请问大神:

这种情况该如何配置、加速PHP呢?不要求像别人那样秒开了,至少不要这么差劲吧!

感谢!

回复内容:

各位前辈,请你们帮忙:

服务器是阿里云ECS 1核1G 2M
数据库是阿里云RDS云数据库,速度非常快
系统是CentOS 6.5 64位
服务器是NGINX 1.6.2
PHP是5.4.38 已经安装了OPCache
网站程序是开源CMS,别人的网站基本都是秒开,所以程序没什么问题
我使用阿里云OSS储存静态文件,css、js等,速度也很快
ping一下域名基本都是在50ms
直接访问静态文件只需要100ms,所以Nginx是正常的

可是网站访问时候响应实在太慢太慢了,每点击一下都需要等待4s-5s才能返回结果,所以我坚信是PHP的处理速度太慢了,请问大神:

这种情况该如何配置、加速PHP呢?不要求像别人那样秒开了,至少不要这么差劲吧!

感谢!

速度慢有很多种情况,比如

  1. DNS解析
  2. CDN(可能用了国外的cdn,也会导致很慢的)
  3. 服务器IO(阿里云的io做的不是很好,频繁的操作io,可能很慢)
  4. 数据库
  5. 当然跟访问用户的网络也有关系

可以仔细排查下。

使用 xdebug + webgrind 调试下你的 PHP 代码性能。看看代码阻塞在哪里了。比如 curl 访问其他站点阻塞了
xdebug: 获取函数的调用栈和调用时间
webgrind: 通过 web 界面展示 xdebug 的结果

你可以用Apache Bechmark 去测试下你的网站响应速度,看看是静态文件还是你的PHP处理速度慢,再决定下一步。

1.静态问题是否使用了CDN加速?
2.是否有静态化?
3.数据库是否合理建立了索引?
4.不妨发下你的网站地址,我们帮你把把脉?

参考这个

http://segmentfault.com/q/1010000002680980/a-1020000002681487

检查网页代码里是不是调用了google的东西,只要有就会很慢

升级服务器吧,1核 1G有点慢了。

我感觉,当所有外部环境都不是问题的时候,那就是事应该想想是不是自己的问题,我感觉,就是程序的问题。程序效率太低。

能否提供一下服务器ssh信息,我去围观围观。。。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:laravel的queue实现Next article:mysql怎么处理高并发?