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应该帮助不是很大。
页: 1 2 [3] 4 5
查看完整版本: apache+php 与 nginx+php,哪个好?看我的经历!