Maison > développement back-end > tutoriel php > php的短连接,短进程有什么缺点

php的短连接,短进程有什么缺点

WBOY
Libérer: 2016-06-06 20:22:16
original
1255 Les gens l'ont consulté

比如每个页面结束,数据库连接就关了,下个页面需要重新打开数据库,重新连接,获取数据。这样比起那些可以持久过程,长连接的网站,有什么重大缺点和小优点呢。

回复内容:

比如每个页面结束,数据库连接就关了,下个页面需要重新打开数据库,重新连接,获取数据。这样比起那些可以持久过程,长连接的网站,有什么重大缺点和小优点呢。

首先,不明说是什么数据库,那么就默认为mysql。
然后,web的大部分应用场景适合短链接,而不是长链接。比如你看小说,当小说当前章获取到了后,相当长一段时间用户不会出发新的链接,为何不释放掉该链接让给需要的用户呢?缺点是,反复建立释放链接,也是损耗。
至于长链接,简单的说,就与上面恰恰相反。
其实当具备了sql连接池后,会好很多。
个人愚见,抛砖引玉。

优点是简单.....

每一次连接数据库都涉及很多次 Unix System Call ,总在开闭数据库连接是极大的消耗。

对虚拟主机提供商来说,短连接是友好的.
比如虚拟主机厂商开启了100个Apache或者PHP-FPM工作进程来驱动50个虚拟主机站点,
如果1个站点对应1个到MySQL的持久连接,那么1个工作进程就有可能保持50个持久连接,
100个工作进程就是100*50=5000个持久连接,
而MySQL的最大连接数max_connections默认是151,
这5000个连接对MySQL服务器压力还是非常大的.

而对于只有单个应用的服务器来说,开启持久连接后,
一个PHP-FPM保持一个到MySQL的长连接,实现透明的"连接池",
减少每个请求都重复建立和释放连接的开销,能提升性能.

PHP FastCGI进程管理器PHP-FPM的架构
http://my.oschina.net/eechen/blog/541139

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal