liuxingyuyuni
发表于 2012-04-04 20:53
压力测试给个值看看
lsstarboy
发表于 2012-04-04 22:57
回复 20# chlinux
我觉得你这个环境的干扰数据有点多,影响网站响应速度的因素很多,比如mysql配置,php模块的配置等等,不在一个起跑线上,结果肯定不一样。
我建议把my.cnf和php的模块配置得一模一样,然后再去调整nginx的work数和fcgi的进程数,每种模式都试试,这样得出来的结论才准确。
另外楼主的机器是单核?单核fcgi要吃亏一些。
chlinux
发表于 2012-04-05 09:07
本帖最后由 chlinux 于 2012-04-05 09:24 编辑
回复 22# lsstarboy
服务器的配置都是一样的,每个cpu 都是四核的,且都是双cpu的,连接的数据库都是同一个独立的数据库服务器,php.ini是一样的,nginx的work数和fcgi的进程数值都比较高。
也就是说,外围环境都是一样的,除了php的运行环境。
chlinux
发表于 2012-04-05 09:14
本帖最后由 chlinux 于 2012-04-05 09:28 编辑
回复 22# lsstarboy
nginx配置 worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 51200;
}
http
{
include mime.types;
default_typeapplication/octet-stream;
#charsetgb2312;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 8m;
client_body_buffer_size 256k;
sendfile on;
tcp_nopush on;
server_tokensoff;
tcp_nodelay on;
keepalive_timeout 90;
php-fmp一些配置<value name="pm">
<value name="style">static</value>
<value name="max_children">128</value>
<value name="apache_like">
<value name="StartServers">20</value>
<value name="MinSpareServers">5</value>
<value name="MaxSpareServers">35</value>
</value>
</value>
<value name="request_terminate_timeout">30s</value>
<value name="request_slowlog_timeout">10s</value>
<value name="slowlog">/www/weblog/slow.log</value>
<value name="rlimit_files">51200</value>
<value name="rlimit_core">0</value>
<value name="max_requests">10240</value>
apache的一些配置
<IfModule prefork.c>
ServerLimit 1800
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 1500
MaxRequestsPerChild5000
</IfModule>
chlinux
发表于 2012-04-05 09:36
本帖最后由 chlinux 于 2012-04-05 09:39 编辑
回复 21# liuxingyuyuni
生产环境不能做压力测试了
lsstarboy
发表于 2012-04-05 13:56
回复 25# chlinux
给两个建议:
1、没做压力测试就投入到生产中去,非常危险。
2、无论是apache还是nginx,或者是fcgi,并不是进程数/线程数越多越有效,多到一定程序越多性能越低!!
catcce
发表于 2012-04-05 16:02
一直用 apache ,稳定些。。。
owenliang1990
发表于 2012-04-06 13:39
这个东西都是有固定结论的,lighttpd提供静态页面快,apache都是作为后端服务器提供服务的,nginx一般做反向代理做页面级别缓存,细节就太多了,keep-alive开的越久肯定吞吐率越高,只不过并发数会下降,不知道楼主为什么要看TOP,和费解... 网站看的是服务质量, 肯定要用apache ab压一下或者监控看运行状态, 关注吞吐率和请求处理时间, 另外php加速,fcgi都会有性能提升,php本身写的好不好又是一码事,数据是否走memcache集群,数据库是否合理的分区分表,是否读写分离,优化余地很大,这些还都是配置层面的东西,架构层面还需要考虑站点内容,图片服务的话对带宽占用很大,是否是1000M网卡,反向代理机器摆了多少,反向代理到后端服务器是否走了LVS-DR,后端服务器是否接入1000M交换机,是否拥有独立带宽,是否部署CDN.
chlinux
发表于 2012-04-06 14:34
回复 28# owenliang1990
嗯,看top,主要是因为两台服务器跑的程序及外围环境都是完全一样的,所以才有比较性可言。两台服务器程序一样的,共用一个数据库,共用了一个redis服务器,只是php运行环境不一样。top看,差异比较大,所以就帖出来了。
yifangyou
发表于 2012-04-08 00:47
nginx是事件驱动,应该比apache要好很多,apache2.4也学nginx改为事件驱动了,但是若是动态程序的话,大部分的时间估计在php程序方面,无论是apache还是nginx应该帮助不是很大。