memcache连接慢又一例
浏览:3372次 出处信息
继上次解决memcache连接慢问题以来,好长一段时间没在这个问题上翻过跟头。这一次我又在生产环境观察到php和memcache的连接时间经常会在50ms以上。
作为一个cache,占用了这么长的执行时间,天理何在?
实际的运行环境如下:
apache + mod_phpphp-memcache扩展版本为2.2.5memcache的并发连接数在400左右,相当少这次memcache扩展用的是最新的稳定版,无可挑剔。所以刚开始我认为是网络环境的问题,于是直接采用telnet工具直连memcache进行测试,发现速度飞快!一点便秘感都没有!所以把目光仍然放回到memcache扩展上来,集中对比较慢的addServer方法各项参数进行排查。
Memcache::addServer方法
bool Memcache::addServer ( string $host [, int $port = 11211 [, bool $persistent [, int $weight [, int $timeout [, int $retry_interval [, bool $status [, callback $failure_callback [, int $timeoutms ]]]]]]]] )
比对结果表明,$weight参数对memcache的连接时间有显著的影响,$weight的默认值为1,一旦设置为别的数值,连接时间便会由毫秒级变成50ms左右,立竿见影。
鉴于php-memcache扩展一贯恶劣的表现,俺不得不痛下决心迁移到新的memcached扩展上。memcached扩展基于libmemcached开发,而且提供了丰富的接口方法,应该是更好的选择。
建议继续学习:
- 关于memcache分布式一致性hash (阅读:10791)
- Memcache分布式部署方案 (阅读:5596)
- 关于session和memcache的若干问题 (阅读:4364)
- Memcache源代码分析之数据存储 (阅读:4031)
- Memcache mutex设计模式 (阅读:3835)
- 关于Memcache长连接自动重连的问题 (阅读:3722)
- Memcache源代码分析之网络处理 (阅读:3737)
- Memcache协议的学习 (阅读:3699)
- memcache的几点注意 (阅读:3538)
- 解决memcache连接奇慢问题一例 (阅读:3533)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:php实现百度音乐采集下载
后一篇:通过php+imagick 创建PDF图片预览 >>
文章信息
- 作者:Volcano 来源: 某人的栖息地
- 标签: memcache
- 发布时间:2009-12-23 09:43:14
建议继续学习
近3天十大热文
-
[84] memory prefetch浅析
-
[53] 基本排序算法的PHP实现
-
[51] 深入浅出cassandra 4 数据一致性问
-
[50] 转载:cassandra读写性能原理分析
-
[42] 字符引用和空白字符
-
[42] MySQL半同步存在的问题
-
[40] javascript插入样式
-
[40] Inline Form Labels
-
[38] 获取Dom元素的X/Y坐标
-
[38] JS中如何判断字符串类型的数字