apache和mysql不在一台服务器上_如何配置_Apache fastcgi mysql服务器的配置实例

这个配置实例是我自己摸索出来的。

服务器的生产环境是 apache+mpm

worker+fastcgi。利用cpanel主机的/scripts/easyapache脚本可以很方便地安装必要的组件。但是默认安装好的配置并

不能很好的运用于生产环境,根据网站的负载不同,你可能需要手动修改一些关键的配置文件,这也正是我做的。

MPM模块的引进是apache2.0版本开始最重大的改进之一,MPM常见的模式是prefork和worker,很奇怪,在cpanel服务器的

web控制端,默认配置prefork模式,因此,如果你要使用MPM

worker,需要手动修改http.conf,一个典型的prefork配置是这样的:

StartServers 5

MinSpareServers 5

MaxSpareServers 10

MaxClients 150

MaxRequestsPerChild 0

prefork模式可以提高apache的并发能力,对于大内存的服务器来说是apache和cpanel官方推荐的方法,实际我用了worker模式,它对内存的使用更加经济,删掉类似上面的prefork模式,以worker模式取而代之:

ServerLimit 16

ThreadLimit 64

StartServers 2

MaxClients 1024

MinSpareThreads 64

MaxSpareThreads 128

ThreadsPerChild 64

MaxRequestsPerChild 1300

ThreadStackSize 327680

TimeOut 60

下一步是对fastcgi的配置。fastcgi是php的一种运行模式,它最大的优点就是大大提高了php脚本的执行效率,但它的配置也是最复杂

的,事实上,你应该根据网站的实际流量和服务器的现有资源,控制fastcgi的进程数,尤其要注意及时杀死空闲僵死的fastcgi进程,以收回内存。

cpanel服务器的配置文件是/etc/httpd/conf/php.conf,我的配置如下:

# Fastcgi configuration for PHP5

LoadModulefcgid_module modules/mod_fcgid.so

MaxRequestsPerProcess 30

ProcessLifeTime 1200

IdleTimeout 300

DefaultMinClassProcessCount 2

DefaultMaxClassProcessCount 6

IPCConnectTimeout 30

IPCCommTimeout 300

因为服务器的生产环境是用于虚拟主机托管,因此会产出许多(超过100不稀奇)个php(运行于fastcgi模式)的进程,以上的配置的优点是能

够较好的回收内存,对有较多数量网站,而大部分的流量并不高的生产环境是一种效率和稳定性之间的折中。即使做了上述的配置,实际内存的使用也往往接近

3GB。

因此,你可以另外通过cronjob的方法,定时杀死php进程,回收内存,比如每小时杀死一次:

0 * * * * psaux | grep php | egrep -v grep | awk '{print $2}' | xargs kill -9

最后,是mysql的配置,数据库的配置可以是一件非常复杂的事情,不了解的人请不要照抄我的配置:

[mysqld]

skip-networking

log-slow-queries

safe-show-database

local-infile=0

skip-locking

skip-name-resolve

set-variable= key_buffer_size=256M

set-variable= thread_concurrency=16

set-variable= max_connections=200

set-variable= table_cache=256

set-variable= max_delayed_threads=20

set-variable= max_tmp_tables=128

set-variable= query_cache_type=1

set-variable= query_cache_size=16M

set-variable= thread_cache_size=16

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值