windows上的php-fpm

FastCGI

 

As we all know,nginx配php是通过fastcgi(一个类似http的协议,升级版的cgi)的。在linux上有php-fpm帮你管理进程,在windows似乎没有,这是有点令人悲伤的。

 

php-cgi-spawner

 

 

Github这么神奇的地方,怎么会有你找不到的东西呢?我找到了这个库php-cgi-spawner,这个库是用C语言写的,看了源码,它自己简单实现了fastcgi和进程管理

 

 

操作使用

 

 

1.准备工作

 

image

 

image

 

2.修改启动脚本

 

@echo off

SET PATH=%SystemRoot%

SET PATH=%Path%;%~dp0imagemagick
SET PATH=%Path%;%~dp0php

SET tmp=%~dp0temp
SET PHP_FCGI_MAX_REQUESTS=2000

Rem Start php-fastcgi on port 9000
REM for /l %%i in (1 1 2) do (

set PHP_HELP_MAX_REQUESTS = 100
for /l %%i in (1 1 1) do (
REM bin\runhiddenconsole php\php-cgi.exe -b 127.0.0.1:9000 -c php\php.ini REM cgi单进程启动模式
bin\runhiddenconsole php_cgi_spawner\php-cgi-spawner.exe "php\php-cgi.exe -c php\php.ini" 9000 4+16 REM php-cgi-spawner模拟php-fpm启动模式
)
exit

 

3.启动脚本

 

image

image

 

 

验证结果

 

 

上篇 《Windows Nginx FastCGI PHP 并发阻塞问题》发现了问题,这里我们验证下结果

image