Running command line PHP through PHP-FPM

2019-02-12 22:40发布

Currently I use PHP-FPM with NGINX for front end requests but also run some background processes through a long running PHP script using exec to run other scripts with the command line PHP. What I'm thinking though is that this would be more efficient if these were also run through PHP-FPM? Any ideas on how I would do this? Thanks.

2条回答
时光不老,我们不散
2楼-- · 2019-02-12 23:05

Very late to this question (4 years) but the correct answer is cgi-fcgi which will let you pass commands and execute code in the already-in-memory php-fpm

查看更多
Emotional °昔
3楼-- · 2019-02-12 23:07

FPM is a tool to Manage FastCGI Processes. Just shuffle the letters. While it manages long-running PHP processes, it does so only under the mental umbrella of FastCGI.

Because you're creating a background work queue, you want something designed to manage a background work queue and running processes.

Gearman is an excellent choice for the work queue half. It's platform and language agnostic, and scan scale to the heavens and back. The PECL extension works well.

For keeping those long-running processes going, take a look at Supervisor.

The two make a great duo. Check out this blog post by PHP hacker Matthew Weier O'Phinney that documents some of his exploration with Gearman and Supervisor.

查看更多
登录 后发表回答