command-line - 通过 PHP-FPM 运行命令行 PHP

标签 command-line nginx php

目前,我将 PHP-FPM 与 NGINX 一起用于前端请求,但也通过使用 exec 的长时间运行的 PHP 脚本运行一些后台进程,以使用命令行 PHP 运行其他脚本。我在想的是,如果这些也通过 PHP-FPM 运行,效率会更高吗?关于如何执行此操作的任何想法?谢谢。

最佳答案

FPM 是一种管理FastCGI P进程的工具。只是打乱字母。虽然它管理长时间运行的 PHP 进程,但它仅在 FastCGI 的精神保护下这样做。

因为您要创建一个后台工作队列,所以您需要一些设计的东西来管理后台工作队列和正在运行的进程。

Gearman是工作队列一半的绝佳选择。它与平台和语言无关,并且可以上天和后天进行扫描。 PECL extension效果很好。

为了让那些长时间运行的进程继续运行,请查看 Supervisor .

两人是绝配。查看this blog post by PHP hacker Matthew Weier O'Phinney记录了他与 Gearman 和 Supervisor 的一些探索。

关于command-line - 通过 PHP-FPM 运行命令行 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7314563/

相关文章:

batch-file - 如何在批处理文件中请求管理员访问权限

node.js - Docker中用于Express.js服务器的Nginx反向代理

ssl - HTTPS 问题 "Your connection is not private", Nginx

php - MySQL - PHP - 用户 '' @'localhost' 访问数据库 'myproject' 被拒绝

php - 插入图像到 MySQL 数据库

unix - Powershell 是否向后兼容标准命令提示符?

video - ffmpeg 无法扩展绘图文本

java - runtime.exec 立即发送 EOF 到输入?

ruby-on-rails - Rails 3、Authlogic、NGINX 和 HTTP 基本身份验证不能很好地协同工作

php - 仅使用 index.php 和数据库的网站