php涉及数据库操作时响应很慢。
症状描述:
网站是php开发的,大部分页面响应很慢。
本地开发时响应速度很快,但是部署到生产环境后大部分响应很慢。
通过谷歌浏览调试发现PHP页面加载很慢,有个别的php请求的响应时间甚至超过10秒,php请求的处理都不是很复杂,不该这么慢。
主要花费的时间全耗在了Waiting(TTFB)上,有的很慢的页面如那个10.2秒的页面,Waiting的时间竟然达到了10秒。
偶然间发现有个别的页面,在不登陆的情况下响应很快,登录后响应很慢,这样的页面特别查看了下,发现登录情况下会执行mysql的select,不登陆则直接显示固定的内容。
因此锁定为在涉及mysq操作时响应速度才很慢。
写了个简单的mysql 的select查询,通过web访问后发现很慢,通过microtime()统计执行时间发现时间是几十毫秒或毫秒级的,但是Waiting的时间仍然是秒级的。这明显的不科学啊,php从开始执行到结束的时间 和 web的响应时间差好几个数量级的。
涉及mysql操作时很慢,但是php本身执行完 mysql操作花费的时间并不慢啊。
弄到这也没啥路子了,只能去搜度娘了,结果还真搜到了,有人也出现一样的情况在度娘上提问了,竟然还有人回答了,突然感觉还是好人多啊。
按回答者的意思是连接数据库时使用的是localhost,但是hosts中没有配置localhost。
去查看hosts了,一看,我去。。。真没有localhost。
添加上
127.0.0.1 localhost
,生成环境下php web访问速度立马给力了。
php涉及数据库操作时响应很慢。的更多相关文章
- Asp.net 4.0,首次请求目录下的文件时响应很慢
原文:Asp.net 4.0,首次请求目录下的文件时响应很慢 1. 问题起因2. 尝试过的处理思路3. 解决方法 1. 问题起因 一个从VS2003(.Net Framework 1.1)升级到.ne ...
- Access 中数据库操作时提示from子句语法错误
问题:如果在Access 中数据库操作时提示from子句语法错误原因:语句中某一单词为Access中的关键字.如:select * from user.其中user就是一关键字.解决:用中括号[]将其 ...
- PHP进行数据库操作时遇到的一个问题
PHP进行数据库操作时遇到的一个问题 昨天在进行数据库操作时,遇到了一个问题(用的是 wampserver 环境): <?php $link = @mysqli_connect('localho ...
- 跨越数据库操作时注意要加dbo
跨越数据库操作时注意要加dbo insert into hrdb.dbo.TB_B_PROJECTS :这样是正确的 insert into hrdb.TB_B_PROJECTS :这样是错误的
- 用JDBC操作MySQL——大量数据库操作时使用批处理提速
之前所有的操作由于数据量很小,所以没有进行批处理的优化,性能也没有出现明显的恶化,但是随着我用java处理数据量的大幅提高,频繁使用静态SQL语句的方法严重降低了处理效率,这里总结一下JDBC批处理的 ...
- sql server 2008 r2 数据库操作时提示 9002错误“事物日志已满”问题
事务日志截断 若要避免数据库的事务日志被填满,例行备份至关重要.在简单恢复模式下,备份了数据库后会自动截断日志,而在完整恢复模式下,只有备份了事务日志后方才截断日志.但是,截断过程有时也可能发生延迟. ...
- SVN提交时响应很慢,我是这样解决的。
现象:使用TortoiseSVN提交文件时,弹出提交窗口,要等待30秒的样子,才开始工作,开始提交文件后速度还是很快的. 解决后提交文件几乎是秒杀. 解决办法 (我的电脑可以了,但还是有些同事的电脑没 ...
- MongoDB:利用官方驱动改装为EF代码风格的MongoDB.Repository框架 六:支持多数据库操作
本次主要内容:修正MongoDB.Repository框架对多数据库的支持. 在之前的五篇文章中对MongoDB.Repository框架做了简单的介绍是实现思路.之前是考虑MongoDB.Repos ...
- java之Hibernate框架实现数据库操作
之前我们用一个java类连接MySQL数据库实现了数据库的增删改查操作---------MySQL篇: 但是数据库种类之多,除了MySQL,还有Access.Oracle.DB2等等,而且每种数据库语 ...
随机推荐
- jQuery.validate API
- MatrixTurn源码阅读
在看cacheAsBitmap 相关资料时,找到bit101的一篇文章,http://www.bytearray.org/?p=290 全文如下: One of the feature I would ...
- ETL工具的评价
评价项目 评价结果 备注 支持平台 SUN Solaris.HP-UX.IBM AIX.AS/400.OS/390.Sco UNIX.Linux.Windows 支持数据源 DB2.Informix ...
- 嵌入式 arm平台ping域名指定ip小结
在fs的目录/etc/下添加文件hosts,然后内容修改如下: 192.168.11.12 qycam.com ping qycam.com 解析为192.168.11.12
- Nginx中的upstream轮询机制介绍
Nginx中upstream有以下几种方式: 1.轮询(weight=1) 默认选项,当weight不指定时,各服务器weight相同, 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器d ...
- delphi 中 $是什么意思 串口中使用
delphi 中 $是什么意思? 比如:$41----$5A 意识是26个字母, 可以用$来表示? $在delphi 中还可以怎么用?1.表示16进制,$41就是65,第一个字母的ASCII值 pro ...
- div错位解决IE6、IE7、IE8样式不兼容问题
IE6里DIV错位的问题 采用”FLOAT:LEFT“的DIV在IE8.IE7.都没问题,IE6下却向下移动,出现空白.这是因为,IE6采用的内核默认把DIV之间的距离增加了3~5个PX, ...
- 《Windows核心编程》第5版 学习进度备忘
学习资源:<Windows核心编程>第5版 知识基础支持: 本书与<Windows程序设计>第5版珍藏版结合很好,二者重叠内容不多,二者互补性强,而且相关方面的优秀书籍 跳过的 ...
- SparkR grammer
They are different between local R and sparkR: sparkR 跑通的函数: http://blog.csdn.net/wa2003/article/det ...
- How To Set Up Port Forwarding in Linux
Port forwarding usually used when we want our computer act like a router. Our computer receive the p ...