pconnect
来源:互联网 发布:淘宝店铺出租 编辑:程序博客网 时间:2024/05/18 04:55
http://www.codeigniter.org.cn/forums/thread-11875-2-1.html
pconnect是指PHP到MySQL的连接。pconnect为真值时,CI调用PHP中的mysql_pconnect()。
mysql_pconnect()开一个PHP/MySQL的永久连接,PHP脚本结束时连接不会断,PHP结束时连接才会断。
在Apache下,PHP以module形式存在,Apache结束才会令PHP结束。使用FastCGI时,一般会以PHP执行总时间定下PHP的寿命,PHP会定期结束/重生。
pconnect是重用连接,而非共用连接。
MySQL的默认总连接是150,30秒后才超过150,以压力环境情况,若无重用,不断开启新连接,早应超过150,这证明PHP/MySQL的确在重用连接。
MySQL达至超过150个连接,说明有超过150个PHP进程。使用Apache时,PHP进程是以Apache进程存在,Apache默认的 MaxClients是256,但不少Linux服务器上一般会预设为150而不使用默认的256与MySQL吻合。Apache超过MySQL负荷是有点奇怪,是使用Windows吗?先去确认一下MaxClients吧!
有超过150个Apache进程存在,是说明PHP处理不来压力环境的请求率,处理不及时,进程逐渐累积达至超过MySQL的总连接。这是超负荷了。若负荷是瞬时的,把MySQL的max_connections增加至与Apache的MaxClients可增加瞬时负荷能力,但这不能增加持久的负荷力,继续下去总会达至系统完全饱和。
这问题与CI无关,是xAMP共有的负荷力问题,使用CI比纯PHP应用要早些达到负荷力饱和点,因使用CI要多耗费点资源。CI算是开销最低的PHP架构之一,不花钱在机器上,又不花时间去学会调试系统,去进行压力测试,不明所以便作出“CI还是很脆弱”的结论!无言以对!也许该放弃使用任何架构进行开发。
pconnect是鸡肋?对于压力负荷环境,除非内存限制极大,pconnect是极有好处的选择。
PHP并非不可事前编译为“中间码”,Zend是有提供编译器的,当然要付钞!
- pconnect
- pconnect和connect
- 深入php redis pconnect
- redis的pconnect
- redis的pconnect解析
- phpredis connect 与 pconnect
- php pconnect 长连接原理
- 深入理解 php redis pconnect
- phpredis中的connect和pconnect
- 连接数太小pconnect导致超出连接数
- 深入理解phpredis的pconnect方法
- predis如何实现phpredis的pconnect方法
- 使用Memcached永久链接(pconnect)加速链接性能
- 使用Memcached永久链接(pconnect)加速链接性能
- mysql与mysqli的区别 永久连接pconnect
- mysql pconnect长连接,短连接时掉数据问题
- 为什么要使用Redis中pconnect创建连接(1)
- 关于phpredis中的connect和pconnect的一些见解
- PHP的一些函数call_user_func_array,func_get_args()
- STBLOG插件类分析
- dede与discuz通过ucenter通信uc_server
- svn使用教程(服务器安装与客户端安装配置)
- svn怎么版本还原
- pconnect
- dede只能采集第一个列表页面
- svn解决冲突问题
- JQuery上传插件Uploadify
- zend注册码
- dede批量删除文章
- mysqldump
- 备份错误mysqldump: Got error: 1016 when using LOCK TABLES
- JavaScript跨域