압력 테스트 명령을 사용하여 발생한 구덩이
.\hey -n 3000 -c 1500 http://192.168.56.30:80/v1/prods/2000
오류 신고
[1] Get "http://192.168.56.30:80/v1/prods/2000": read tcp 192.168.56.1:49176->192.168.56.30:80: wsarecv: An existing connection was forcibly closed by the remote host.
- 핸들 수를 설정합니다.
//查看系统句柄数
ulimit -n
//修改句柄数
sudo vi /etc/security/limits.conf
//在最后加上,用户名为*的时候表示所有的用户
用户名 soft nofile 100000
用户名 hard nofile 100000
//重新登录下终端
- nginx 구성
//查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
//查看每个CPU的核数
cat /proc/cpuinfo| grep "cpu cores"| uniq
//修改nginx配置文件
sudo vi ngx/nginx.conf
//配置两个参数
worker_processes 4; //进程数
worker_connections 999999 //单个进程允许的客户端最大连接数
//重启服务器
docker restart <容器ID>
worker_connections 구성은 다음 공식을 따릅니다.
worker_processes * worker_connections / 4 <[ulimit -n]
- 테스트에 성공했습니다.
보충 : 가상 머신의 메모리는 2G 이상이어야합니다. 1G 가상 머신이 충돌하도록 설정했습니다.