Nginx - Linux 커 널 파라미터 최적화
Liux 시스템 의 기본 커 널 파 라 메 터 는 가장 통용 되 는 장면 을 고려 합 니 다. 이것 은 높 은 동시 방문 을 지원 하 는 WEB 서버 에 부합 되 지 않 기 때문에 Liux 의 커 널 파 라 메 터 를 수정 하여 Nginx 가 더욱 높 은 성능 을 가 질 수 있 도록 해 야 합 니 다.
Liux 커 널 을 최적화 할 때 우 리 는 서로 다른 업무 수요 에 따라 매개 변 수 를 조정 할 수 있다.여기 서 나 는 단지 Nginx 가 더 많은 병발 수 를 지원 하 는 Liux 커 널 매개 변수 설정 을 기록 할 뿐이다.
커 널 매개 변수 수정 방식 - / etc / sysctl. conf 파일 의 매개 변수 값 을 수정 하여 저장 한 후 sysctl - p 명령 을 실행 하여 변경 사항 을 적용 합 니 다.
1 fs.file-max = 999999
2 net.ipv4.tcp_tw_reuse = 1
3 net.ipv4.tcp_keepalive_time = 600
4 net.ipv4.tcp_fin_timeout = 30
5 net.ipv4.tcp_max_tw_buckets = 5000
6 net.ipv4.ip_local_port_range = 1024
7 net.ipv4.tcp_rmem = 4096 32768 262142
8 net.ipv4.tcp_wmem = 4096 32768 262142
9 net.core.netdev_max_backlog = 8096
10 net.core.rmem_default = 262144
11 net.core.wmem_default = 262144
12 net.core.rmem_max = 2097152
13 net.core.wmem_max = 2097152
14 net.ipv4.tcp_syncookies = 1
15 net.ipv4.tcp_max_syn.backlog=1024
커 널 매개 변수 소개:
file - max: 프로 세 스 가 동시에 열 수 있 는 최대 핸들 수 입 니 다. 이 값 은 최대 병렬 연결 수 를 직접 제한 합 니 다. 실제 상황 에 따라 설정 해 야 합 니 다.
tcp_tw_reuse: 이 매개 변 수 는 TIME - WAIT 상태의 socket 을 새로운 TCP 연결 에 다시 사용 할 수 있 도록 1 로 설정 되 어 있 습 니 다. 서버 에는 항상 TIME - WAIT 상태의 socker 연결 이 대량으로 존재 하기 때 문 입 니 다.
tcp_keepalive_time: 이 매개 변 수 는 keepalive 가 활성화 되 었 을 때 keepalive 메 시 지 를 보 내 는 빈 도 를 표시 합 니 다.기본 값 은 2 시간 입 니 다. 작 게 설정 하면 잘못된 연결 을 빨리 정리 할 수 있 습 니 다.(/ proc / sys / net / ipv 4 / tcp keepalive time 파일 을 통 해 시스템 의 현재 keepalive 메시지 빈 도 를 볼 수 있 습 니 다)
tcp_fin_timeout: 이 매개 변 수 는 서버 가 자발적으로 연결 을 닫 을 때 socket 이 FIN - WAIT - 2 상태 로 유지 되 는 최대 시간 을 나타 낸다.
tcp_max_tw_buckets: 이 매개 변 수 는 서버 가 TIME 를 허용 함 을 나 타 냅 니 다.WAIT 소켓 의 최대 값, TIMEWAIT 소켓 이 이 값 을 초과 할 때 TIMEWAIT 소켓 은 즉시 제거 되 고 경고 메 시 지 를 인쇄 합 니 다.이 매개 변 수 는 기본적으로 180000, 너무 많은 TIME 입 니 다.WAIT 소켓 은 웹 서버 를 느리게 합 니 다.
tcp_max_syn_backlog: TCP 세 번 의 악수 수립 단계 에서 SYN 요청 대기 열 을 받 는 최대 길 이 를 표시 합 니 다. 기본 값 은 1024 입 니 다.이 매개 변수의 값 을 늘 리 면 Nginx 가 accept 연결 에 바 쁠 때 클 라 이언 트 연결 요청 을 잃 어 버 리 는 문 제 를 줄 일 수 있 습 니 다.
ip_local_port_range: UDP, TCP 로 컬 연결 시 포트 의 값 범 위 를 설정 합 니 다.
net.ipv4.tcp_rmem: TCP 수신 캐 시 최소 값, 기본 값, 최대 값.
net.ipv4.tcp_wmem: TCP 에서 캐 시 를 보 내 는 최소 값, 기본 값, 최대 값 입 니 다.
netdev_max_backlog: 네트워크 카드 가 패 킷 을 받 는 속도 가 커 널 처리 속도 보다 클 때 이 패 킷 을 저장 하 는 대기 열 이 있 습 니 다.이 매개 변 수 는 이 대기 열의 최대 값 을 표시 합 니 다.
rmem_default: 커 널 소켓 수신 캐 시 영역 기본 크기 입 니 다.
wmem_default: 커 널 소켓 이 캐 시 영역 에 보 내 는 기본 크기 입 니 다.
rmem_max: 커 널 소켓 수신 캐 시 구역 의 최대 크기 입 니 다.
wmem_max: 커 널 소켓 이 캐 시 영역 을 보 내 는 최대 크기 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.