前几天把工作平台从 Ubuntu 9.10 Karmic 更新到了 10.04 Lucid,由于 Lucid 官方源自带了 PHP5.3.2,以前使用的 dotdeb 的源就没法用了,一直很喜欢这个源的,不但提供了 PHP5.3 而且还有 php5-fpm 这个很实用的 fcgi 进程管理器,这个在官方源里面是没有的。强行上了 dotdeb 虽然也可以,不过必然有很多包会出现依赖问题,处理这些依赖关系是件很烦心的事情。哥啥都不怕,就怕麻烦~ :!:
对于 PHP 来说,php-fpm 还是最合适的,spawn-fcgi 这类东西就不用考虑了,我宁愿用 PHP5 内置的 FastCGI Server。
通过下面的命令启动服务器,监听 9000 端口:
复制代码 代码如下:
php-cgi -q -b 127.0.0.1:9000 &
好了,配合 nginx,可以继续开始工作了,但是你会发现每隔一段时间就会出现 502 Bad Gateway 错误,因为 php-cgi 进程处理的请求数达到最大(默认500)自动退出了。
你需要设置两个环境变量:
PHP_FCGI_CHILDREN – 派生子进程的数量
PHP_FCGI_MAX_REQUESTS – 每个子进程所能处理的最大请求数
配合这两个环境变量,启动内置的 FastCGI Server,保证 PHP 能够派生出子进程来负责处理请求,而不是由主进程来做。否则就会出现上面说的情况,达到 500 以后,自动退出。
下面是一个简单的脚本:
复制代码 代码如下:
#!/bin/bash
## 参考:
##
## http://php.net/manual/en/install.unix.lighttpd-14.php
## http://kovyrin.net/2006/05/30/nginx-php-fastcgi-howto
##
## php-cgi 的文件路径
PHPFCGI=`which php-cgi`
## PID 文件路径
PHP_PID="/tmp/php.pid"
## 绑定 TCP 地址
FCGI_BIND_ADDRESS="127.0.0.1:9000"
## 绑定到 Unix domain socket
#FCGI_BIND_ADDRESS="/tmp/php.sock"
## 派生出多少个 PHP 子进程
## 其中不包括主进程
PHP_FCGI_CHILDREN=16
## 每个 PHP 进程处理的最大请求数
PHP_FCGI_MAX_REQUESTS=4096
## 用户
USERID=verdana
################## no config below this line
# 根据用户不同,切换启动命令
if test x$UID = x0; then
CMD="/bin/su -m -c \"$PHPFCGI -q -b $FCGI_BIND_ADDRESS\" $USERID"
else
CMD="$PHPFCGI -b $FCGI_BIND_ADDRESS"
fi
echo $CMD
# 相关的环境变量
E="PHP_FCGI_CHILDREN=$PHP_FCGI_CHILDREN PHP_FCGI_MAX_REQUESTS=$PHP_FCGI_MAX_REQUESTS"
# 忽略其他的环境变量,以一个干净的环境启动
nohup env - $E sh -c "$CMD" &> /dev/null &
# 记录 PHP 主进程的 PID
# $! 返回的是 sh 的 PID
# 找到所有 php-cgi 进程中最小的 PID,就是主进程的 PID
MASTER_PID=`ps -e | grep 'php-cgi' | sed -n '1p' | awk '{print $1}'`
echo $MASTER_PID > "$PHP_PID"
如何关闭呢?
可以一次性杀灭所有的 php-cgi 进程:
复制代码 代码如下:
ps -e | grep php-cgi | awk '{print $1}' | xargs kill
只弄死主进程也可以达到相同的效果,所有子进程也会随之消失:
复制代码 代码如下:
cat /tmp/php.pid | xargs kill
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
- 雨林唱片《赏》新曲+精选集SACD版[ISO][2.3G]
- 罗大佑与OK男女合唱团.1995-再会吧!素兰【音乐工厂】【WAV+CUE】
- 草蜢.1993-宝贝对不起(国)【宝丽金】【WAV+CUE】
- 杨培安.2009-抒·情(EP)【擎天娱乐】【WAV+CUE】
- 周慧敏《EndlessDream》[WAV+CUE]
- 彭芳《纯色角3》2007[WAV+CUE]
- 江志丰2008-今生为你[豪记][WAV+CUE]
- 罗大佑1994《恋曲2000》音乐工厂[WAV+CUE][1G]
- 群星《一首歌一个故事》赵英俊某些作品重唱企划[FLAC分轨][1G]
- 群星《网易云英文歌曲播放量TOP100》[MP3][1G]
- 方大同.2024-梦想家TheDreamer【赋音乐】【FLAC分轨】
- 李慧珍.2007-爱死了【华谊兄弟】【WAV+CUE】
- 王大文.2019-国际太空站【环球】【FLAC分轨】
- 群星《2022超好听的十倍音质网络歌曲(163)》U盘音乐[WAV分轨][1.1G]
- 童丽《啼笑姻缘》头版限量编号24K金碟[低速原抓WAV+CUE][1.1G]