spawn-fcgi
Written by bixuan on 2009年06月12号 – 10:38spawn-fcgi
1.概况
2.安装
- 下载:
wget -c http://www.lighttpd.net/download/spawn-fcgi-1.6.2.tar.bz2
wget -c http://www.lighttpd.net/download/lighttpd-1.4.22.tar.bz2 #(spawn-php.sh这个文件需要从这里提取,具体在:lighttpd-1.4.22/doc/下) - spawn-fcgi安装:
tar jxvfp spawn-fcgi-1.6.2.tar.bz2
cd spawn-fcgi-1.6.2
./configure
make
make install
3.配置
Usage: spawn-fcgi [options] [-- <fcgiapp> [fcgi app arguments]]spawn-fcgi v1.6.2 (ipv6) - spawns FastCGI processesOptions:
-f <path> filename of the fcgi-application (ignored if <fcgiapp> is given)
-d <directory> chdir to directory before spawning
-a <address> bind to IPv4/IPv6 address (defaults to 0.0.0.0)
-p <port> bind to TCP-port
-s <path> bind to Unix domain socket
-M <mode> change Unix domain socket mode
-C <children> (PHP only) numbers of childs to spawn (default: not setting
the PHP_FCGI_CHILDREN environment variable - PHP defaults to 0)
-F <children> number of children to fork (default 1)
-P <path> name of PID-file for spawned process (ignored in no-fork mode)
-n no fork (for daemontools)
-v show version
-?, -h show this help
(root only)
-c <directory> chroot to directory
-S create socket before chroot() (default is to create the socket in the chroot)
-u <user> change to user-id
-g <group> change to group-id (default: primary group of user if -u is given)
-U <user> change Unix domain socket owner to user-id
-G <group> change Unix domain socket group to group-id
# cat spawn-php.sh
#!/bin/bash## ABSOLUTE path to the spawn-fcgi binary
SPAWNFCGI=”/usr/local/bin/spawn-fcgi“## ABSOLUTE path to the PHP binary
FCGIPROGRAM=”/app/app/php5-fastcgi/bin/php-cgi“## TCP port to which to bind on localhost
FCGIPORT=”9002″## number of PHP children to spawn
PHP_FCGI_CHILDREN=10## maximum number of requests a single PHP process can serve before it is restarted
PHP_FCGI_MAX_REQUESTS=1000## IP addresses from which PHP should access server connections
FCGI_WEB_SERVER_ADDRS=”192.168.11.159“pripath=”/app/wwwroot/www.ourlinux.net”
# allowed environment variables, separated by spaces
ALLOWED_ENV=”pripath PATH USER”## if this script is run as root, switch to the following user
USERID=nobody
GROUPID=nobody################## no config below this lineif test x$PHP_FCGI_CHILDREN = x; then
PHP_FCGI_CHILDREN=5
fiexport PHP_FCGI_MAX_REQUESTS
export FCGI_WEB_SERVER_ADDRSALLOWED_ENV=”$ALLOWED_ENV PHP_FCGI_MAX_REQUESTS FCGI_WEB_SERVER_ADDRS”if test x$UID = x0; then
EX=”$SPAWNFCGI -a $FCGI_WEB_SERVER_ADDRS -p $FCGIPORT -f $FCGIPROGRAM -u $USERID -g $GROUPID -C $PHP_FCGI_CHILDREN”
else
EX=”$SPAWNFCGI -a $FCGI_WEB_SERVER_ADDRS -p $FCGIPORT -f $FCGIPROGRAM -C $PHP_FCGI_CHILDREN”
fi# copy the allowed environment variables
E=for i in $ALLOWED_ENV; do
E=”$E $i=${!i}”
done# clean the environment and set up a new one
env - $E $EX
4.后记
Tags: lighttpd, php-cgi, proxy, spawn-fcgi, spawn-php.sh
Posted in 运维小技巧 | No Comments »
Nginx模块一致性hash的patch
Written by bixuan on 2009年06月10号 – 17:07威总威武:
Consistent Hashing 如下所示:首先求出所有备选服务器(节点)的哈希值,并将其
配置到0~232的圆(continuum)上。然后用同样的方法求出存储数据的键的哈希值,并
映射到圆上。然后从数据映射到的位置开始顺时针查找,将数据保存到找到的第一个服务器
上。如果超过232仍然找不到服务器,就会保存到第一台服务器上.
详细文档这里下载: nginx_hasnginx_upstream_hash 增加一致性hash
Tags: Consistent, Hashing, Nginx
Posted in 负载均衡 | No Comments »
51com招聘
Written by bixuan on 2009年06月10号 – 16:32下面是2则51com招聘的需求,有兴趣的朋友抓住机会啊:)
招聘岗位:IM服务器开发工程师
工作地点:上海市
招聘人数:1人
工作年限:2年以上
外语要求:良好
学历要求:本科及以上
工作职责:
负责IM后台服务器端开发。
特殊要求(技能/工作风格):
1、 精通TCP/IP协议编程,熟悉linux、C/C++编程;
2、 熟悉Mysql数据库开发;
3、 了解大容量、高性能的分布式服务器系统开发原理;
4、 良好的沟通和团队协作能力;
5、 热爱程序开发,喜欢研究追踪最新技术;
有IM后台开发经验者优先。
招聘岗位:PHP开发工程师(游戏事业部)
工作地点:上海市
招聘人数:1人
工作年限:1年以上
外语要求:一般
学历要求:大专及以上
性 别:男
工作职责:
游戏官网开发以及游戏活动开发。
特殊要求(技能/工作风格):
1、 熟悉linux系统;
2、 精通Php+Mysql+Apache开发;
3、 熟悉设计模式;
4、 熟悉Linux下c/c++编程人员优先;
5、 有游戏网站开发、游戏活动开发经验者优先。
有兴趣的朋友可以联系我[bixuan at gmail dot com]!
Posted in 生活日志 | No Comments »
DNS部署原则实践
Written by bixuan on 2009年05月31号 – 11:36部署原则
- 至少有2台以上的服务器,防止服务器的单点;
- 分布在不同的IDC,且不同的ISP机房,最好是不在同一城市,防止IDC和链路的单点;
- 所在IDC链路的速度要稳定和高效,比如是骨干节点
- 放在防火墙后面,因为DNS服务器一旦遭受攻击效果非常明显,后果非常严重;
- 放在在不同的机柜下,防止电源单点;
- 放在不同的交换机下,防止交换机单点;
- 我们现在使用的BIND9是一款老牌知名的DNS软件,稳定性高,性能可以达到:30Kqps;
- DNS对系统资源消耗并不是很多(带宽也就几百Kbps),普通的DELL(根据经验,DELL的机器相对是比较稳定的)机器就可以了;
- 维护方便,不然出问题不能很快响应那是很糟糕的;
Tags: 3H1L, Bind, dns, IDC, 单点
Posted in 运维小技巧 | No Comments »
Linux系统安装
Written by bixuan on 2009年05月24号 – 12:08Linux系统安装
安装建议
@ development-tools
@ x-software-development
ntp
sysstat
pcre
pcre-devel
net-snmp
ncurses-devel
libxml2-devel
lrzsz
openssl-devel
dstat
xfsprogs-2.9.4-1.sl5.x86_64.rpm
xfsprogs-devel-2.9.4-1.sl5.x86_64.rpm
其中红色标出的3个包默认的ISO里是没有的,需要从外面去下载,不如去centos站点下载。
系统配置建议
- sshd
- crond
- network
- syslog
- acpid
- readahead
- irqbalance
- rawdevices
- readahead_early
Tags: acpid, kernel, linux, Ntpd, pcre, rhas, xfs
Posted in 操作系统, 运维小技巧 | 1 Comment »
IDC管理
Written by bixuan on 2009年05月24号 – 11:51IDC管理
IDC标准
- 环境保证
机房整体抗地震级别高达8级,地板承重达800/平方米;多台空调机采用侧送和风管输送相结合的方式送风,保证通风、恒温、恒湿。机房温度:15-25摄氏度,相对湿度:30%-70%;绝缘地板设计,温度烟雾感应消防系统、防火报警探测头,遇火情时系统自动报警,并启动气体自动灭器灭火。 - 电力保障
两路一类市电采用10KV三相线路,互为主备用;双路冗余大功率智能UPS系统,保证持续供电;双备份柴油发电机组后备电源,保证99.9%持续电力供应;交流电220V 50HZ(16A或25A)标准19英寸机架,每台机架采用双路UPS电源直接供电; - 安全保障
专业保安24小时值守,进出机房验证登记制度;数据中心安装美国AV公司的闭路电视监控系统,提供全智能化管理。电视墙监控系统专人7×24小时值守,所有录像保存三个月以上;数据中心安装德国西门子公司的非接触式IC卡电子门禁系统及指纹示别系统,采用先进的数据库管理,IC卡内保存有持卡人编号、进出区域限制、时间限制等资料,只有经过特殊授权的人员才能进入重要区域。 - 网络保障
是否为骨干节点,有效保障网络的稳定性和高速性;CISCO GSR 12008(或JUNIPER M20)高端路由器支撑IDC内部骨干;IDC内部重要网络设备采用双点备份,避免单点故障,增强网络可靠性; - 技术支持
我们拥有雄厚的维护和支持力量,其资深专业工程师具备多年电信机房管理、互联网网络维护及网站建设维护经验,将为您提供从机房设备维护、网络实时监控到网络设备故障排除等全方位的7×24小时的专业技术支持。
如何选择一个好的IDC
- 网络质量(网络拓朴,包括冗余设计,网络架构,安全)
- 自身硬件资源
- 服务
网络质量
这里我们简单的从以下三个方面来考虑:
- 到各个骨干节点的网络延迟
- 所需要的路由跳数(Hops)
- 各地下载速度
测试网络延迟和Hops
测试各地下载速度
自身硬件资源
服务
常见IDC维护
- 温度:[标准:15-25摄氏度]
- 湿度:[标准:30-70%]
- 主机硬盘:[正常是绿灯,故障是红灯]
- 其他…
Tags: HOPS, IDC, 温度, 湿度, 管理
Posted in 网络, 运维小技巧 | No Comments »
正在整理升级《Linux命令大全》
Written by bixuan on 2009年05月21号 – 21:41最近在整理文档,升级《Linux命令大全》这一CHM:)
Posted in 运维小技巧 | 3 Comments »
读《提升可伸缩性的八项最佳实践》有感
Written by bixuan on 2009年05月21号 – 11:47昨天在群里看到朋友分享的《提升可伸缩性的八项最佳实践》个人认为核心是减少延迟!
评价性能参数有以下4个指标:
- 延迟
- 吞吐量
- 利用率
- 效率
在排查问题或者设计的时候,如果将所有涉及到有延迟的地方全部整理出来,然后逐个解决延迟高的点,这样实践的点就会更多,这样也就提升了性能!
Tags: 伸缩性, 利用率, 吞吐量, 延迟, 性能, 效率, 最佳实践
Posted in 运维小技巧 | No Comments »
监控系统
Written by bixuan on 2009年04月9号 – 19:35最近在构思监控系统的设计,大的分类包括:
- 应用监控(对具体业务的监控,监控可服务情况)
- 物理监控(主要是底层的资源监控,监控资源件的利用率)
估计近期就会编码了…
Tags: monitor, 监控
Posted in 生活日志 | No Comments »
DNS系统上线咯
Written by bixuan on 2009年04月9号 – 00:59DNS管理系统终于上线了,嘿嘿:)
Tags: dns
Posted in 生活日志 | 1 Comment »