웹 서비스의 동시 연결 수를 제한하도록 Nginx 프록시 서버를 구성하는 방법은 무엇입니까?
소개:
웹 애플리케이션의 개발과 함께 사용자 경험과 서비스 안정성을 보장하려면 웹 서비스의 동시 연결 수를 제한하는 것이 중요합니다. 고성능 웹 서버이자 역방향 프록시 서버인 Nginx는 동시 연결 수를 쉽게 제한하는 데 도움이 되는 풍부한 구성 옵션을 제공합니다. 이 기사에서는 웹 서비스의 동시 연결 수를 제한하기 위해 Nginx 프록시 서버를 구성하는 방법을 소개하고 해당 코드 예제를 제공합니다.
1. Nginx 설치:
먼저 Nginx를 설치해야 합니다. 다음은 Ubuntu에 Nginx를 설치하는 명령 예입니다.
$ sudo apt update $ sudo apt install nginx
2. Nginx 프록시 서버 구성:
Nginx 구성 파일을 엽니다.
$ sudo nano /etc/nginx/nginx.conf
http 블록에 다음 구성을 추가합니다.
http { ... # 限制并发连接数为100 limit_conn_zone $binary_remote_addr zone=concurrent:10m; server { ... # 限制并发连接数为10 limit_conn concurrent 10; ... } }
위의 예제 구성에서는 Nginx의limit_conn 모듈을 사용하여 동시 연결 수를 제한합니다. 그 중 limit_conn_zone
用于定义一个共享内存区域,以存储并发连接数的状态信息,并设置了10m的大小;limit_conn
는 각 서버 블록에서 동시 연결 수를 10개로 제한하는 데 사용됩니다. 실제 필요에 따라 조정할 수 있습니다.
3. Nginx 서비스 다시 시작:
구성을 적용하려면 Nginx 서비스를 다시 시작해야 합니다.
$ sudo systemctl restart nginx
4. 구성 확인:
ab 명령을 사용하여 여부를 확인할 수 있습니다. 구성이 효과적입니다. 다음은 스트레스 테스트를 위해 ab 명령을 사용한 예입니다.
$ ab -c 100 -n 1000 http://localhost/
위 예에서는 -c 매개변수를 통해 동시 요청 수를 100으로 설정하고, -n 매개 변수를 통해 총 요청 수를 1000으로 설정했으며, 접속된 URL은 http://localhost /입니다. 구성이 적용되면 다음과 유사한 출력이 표시됩니다.
Concurrency Level: 100 Time taken for tests: 10.000 seconds Complete requests: 1000 Failed requests: 0 Total transferred: 158000 bytes ...
결론:
Nginx 프록시 서버를 구성하면 웹 서비스에 대한 동시 연결 수를 쉽게 제한할 수 있습니다. 위의 구성 예는 이 기능을 빠르게 구현하는 데 도움이 될 수 있습니다. 물론 특정 사용 시나리오 및 요구 사항에 따라 일부 조정 및 수정이 필요할 수도 있습니다. 이 기사가 도움이 되기를 바랍니다!
참조 링크:
위 내용은 웹 서비스에 대한 동시 연결 수를 제한하도록 Nginx 프록시 서버를 구성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!