samqiang 发表于 2011-11-26 22:09:12

webbench一万并发测试出现502 bad gateway

在其他服务器上用webbench一万并发测试新搭建的lnmp环境, 测试期间,在浏览器上访问网站的时候出现502 bad gateway 错误,webbench 测试结束,网站访问正常,非常奇怪。 服务器参数如下:

4核8线程xeon CPU
4G 内存
centos 64bit


max_requests:51200
max_children:40

worker_processes 8;
worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;

其他保持lnmp默认配置。

/usr/local/php/logs/php-fpm.log 错误日志出现大量如下::Q

fpm_pctl_kill_all(), line 172: sending signal 15 SIGTERM to child 1641 (pool default)
fpm_pctl_kill_all(), line 181: 40 children are still alive
fpm_got_signal(), line 48: received SIGCHLD


fpm_children_bury(), line 215: child 1686 (pool default) exited on signal 15 SIGTERM after 1263.460179 seconds from start
fpm_pctl_exit(), line 81: exiting, bye-bye!
fpm_unix_init_main(), line 284: getrlimit(nofile): max:1024, cur:1024
fpm_event_init_main(), line 88: libevent: using epoll
fpm_init(), line 52: fpm is running, pid 9824

fpm_children_make(), line 352: child 9864 (pool default) started
fpm_event_loop(), line 107: libevent: entering main loop

求救啊,军哥

yuweitaocn 发表于 2011-11-26 22:20:43

......你的FPM也要调过。

yuweitaocn 发表于 2011-11-26 22:23:21

你这一个访问的页面读不读数据库的?读数据库的话单台MYSQL最大的请求就4000,第二就是PHP-FPM里面的参数,你所提供的参数还不够。第三就是并发连接数里面LINUX内核的调优,你调了没有?你网站没有这么大有必要用10000吗?一秒请求10000,你算算一天的访问量有多少?

samqiang 发表于 2011-11-26 22:56:12

回复 3# 的帖子

测试的是phpinfo()信息,应该不读取数据库吧? linux内核的调优不会, 我是个菜鸟:loveliness: ,我测试这个是为了防止有人向我服务器进行大量webbench请求,导致我服务器缓慢, 这样子的恶意请求怎么阻止啊?

红星 发表于 2011-11-27 15:21:20

原帖由 samqiang 于 2011-11-26 22:56 发表 https://bbs.vpser.net/images/common/back.gif
测试的是phpinfo()信息,应该不读取数据库吧? linux内核的调优不会, 我是个菜鸟:loveliness: ,我测试这个是为了防止有人向我服务器进行大量webbench请求,导致我服务器缓慢, 这样子的恶意请求怎么阻止啊? ...

一台4G的服务器 ,想抗过万的并发 。楼主也真会开玩笑

yuweitaocn 发表于 2011-11-27 17:05:40

回复 5# 的帖子

不要把话说得这么死,一张静态的页面使用NGINX轻松上万一。

yuweitaocn 发表于 2011-11-27 17:06:46

limit_zone one $remote_addr 10m;
                limit_conn   one 10;
你要是想限制每一个IP连接你服务器的数量的话,可以使用这一个,把这一个加在nginx.conf的里面,即可。。

samqiang 发表于 2011-11-27 22:40:00

原帖由 yuweitaocn 于 2011-11-27 17:06 发表 https://bbs.vpser.net/images/common/back.gif
limit_zone one $remote_addr 10m;
                limit_conn   one 10;
你要是想限制每一个IP连接你服务器的数量的话,可以使用这一个,把这一个加在nginx.conf的里面,即可。。 ...
我看咱们网站有这个DDoS deflate的教程我觉得不错,跟你上面说的性能那个更好?

[ 本帖最后由 samqiang 于 2011-11-27 22:41 编辑 ]

yuweitaocn 发表于 2011-11-28 22:25:13

回复 8# 的帖子

军哥的这一个DDOS防御功能强,若仅仅只是限制IP连接数的话。。我这一个性能好。

licess 发表于 2011-12-6 09:54:39

按https://bbs.vpser.net/viewthread.php?tid=6125&page=1&fromuid=3#pid16406 这个试试
页: [1]
查看完整版本: webbench一万并发测试出现502 bad gateway