mysql - PHP NGINX PHP-FPM,是否需要/可能进行 fork ?

标签 mysql nginx php persistent-connection

我使用的设置包括 PHP (5.5)、NGINX (1.1.19) 和 PHP-FPM,使用 MySQL (5.5.34) 作为数据库,以及很多很多存储过程。

我不想深入探讨我使用存储过程的原因,但据我所知,对它们使用持久连接是一种很好的做法,因为它们会随着每个连接加载,从而减慢速度(这仍然是真的吗?)。

现在,据我所知,要建立持久连接,我需要一些子进程,但是对于 PHP-FPM 来说,这是否必要/可能?我读过很多关于这方面的文章,但我并不完全确定。

基本上,主要问题是:当使用提到的设置(PHP-FPM、NGINX、MySQL)时,使用/处理与 MySQL 的持久连接的最佳方式是什么?是否可以?如果不是,有什么可能的解决方法?

提前致谢!

最佳答案

PHP-FPM 作为守护进程运行,因此在 worker 被释放之前保持特定状态。这意味着您可以利用持久连接,例如 connections and connection management 中记录的内容部分。

关于在每个连接上加载的存储过程,除非您不断地创建和删除它们,否则答案是不会。存储过程通常持久保存在数据库服务器上,类似于模式中的触发器和其他数据库对象,因此只会在实际执行时产生开销。

关于mysql - PHP NGINX PHP-FPM,是否需要/可能进行 fork ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20211462/

相关文章:

Mysql:如何在if中使用if else条件进行查询

authentication - nginx auth_basic 时间限制

apache - 如何在 Ubuntu 上同时运行 nginx 和 Apache?

php - 使用 PHP 获取 <script type ="application/ld+json"> 的内容

PHP date_default_timezone_set() 距 GMT 偏移量是否可能?

php - MySQL 复杂连接 - 4 个具有多个条件的表

MySQL TEXT 列的默认值表现不稳定,为什么?

nginx - 对具有 HHVM 的站点使用单独的池

php - PayPalHttpConnection.php 第 174 行 : 中的 PayPalConnectionException

php - HTACCESS : Dynamic rewrite url with multiple variables