nginx 배치 및 간단 한 최적화
Nginx 는 HTTP 서버 로 도 사용 할 수 있 고 역방향 프 록 시, 메 일 서버 로 도 사용 할 수 있 습 니 다.FastCGI, SSL, Virtual Host, URL Rewrite, Gzip 등 기능 을 지원 합 니 다.또한 많은 제3자 모듈 확장 을 지원 합 니 다.
Nginx 의 안정성, 기능 집합, 예시 설정 파일 과 저 시스템 자원 의 소 모 는 그 를 뒤 따 르 게 했다. 전 세계 에서 활발 한 사이트 중 12.18% 의 사용 비율 이 있 는데 약 2220 만 개의 사이트 이다.
nginx 최 적 화 를 연구 할 때 nginx 를 반복 적 으로 설치 하고 정리 하 며 간단 한 배치 스 크 립 트 를 만 들 었 습 니 다. 최신 안정 판 1.14.0, 기본 경 로 를 사용 하여 systemd 시스템 프로 세 스 관리 에 가입 하면 systemd 관리 nginx 의 시작, 종료, 과부하, 상태, 시작 등 을 통 해 자동 으로 시작 할 수 있 습 니 다.
#!/bin/bashyum -y install gcc pcre pcre-develsleep 2cd ~tar -zxvf ~/zlib-1.2.11.tar.gzcd ~/zlib-1.2.11 && ./configure && make && make install cd ~tar -zxvf ~/nginx-1.14.0.tar.gzcd ~/nginx-1.14.0 && ./configure && make && make installcd ~#/usr/local/nginx/sbin/nginxfirewall-cmd --set-default-zone=trustedtouch /lib/systemd/system/nginx.serviceecho “[Unit]Description=nginx After=network.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginxExecReload=/usr/local/nginx/sbin/nginx reloadExecStop=/usr/local/nginx/sbin/nginx quitPrivateTmp=true [Install] WantedBy=multi-user.target” > /lib/systemd/system/nginx.servicesystemctl enable nginx.servicesystemctl restart nginx.serviceecho "nginx done" 이 nginx 를 다시 덮어 쓸 때 awk 로 nginx 프로 세 스 를 찾 은 다음 kill 을 제거 하고 설치 스 크 립 트 를 다시 실행 하면 됩 니 다.
kill - 9 $
ps aux | grep 'nginx' | awk 'NR==2{print $2}'
2. nginx 최적화nginx 최적화 설정 은 nginx. conf 파일 의 main 과 events 세그먼트 에 집 중 됩 니 다.
main 세그먼트 에서 worker 설정 은 work cpu affinity 옵션 을 통 해 작업 유형 에 따라 CPU 밀집 형 또는 IO 밀집 형 으로 실제 업무 상황 에 따라 모든 worker 프로 세 스 가 어느 CPU 핵심 에서 실행 되 는 지 연결 할 수 있 습 니 다. (전 제 는 시스템 이 다 중 핵심 CPU 여야 합 니 다) 예 를 들 어
4. 핵심 CPU 에서 워 커 4 개 를 켜 면 각각 cpu 0 / cpu 1 / cpu 2 / cpu 에 대응 합 니 다. worker processes 4; worker cpu affinity 0001 0010 0100 1000; \ # 4 핵심 CPU 에서 도 워 커 2 개 만 열 수 있 습 니 다. 첫 번 째 worker 는 cpu 0 / cpu 2, 두 번 째 worker 는 cpu 1 / cpu 3. worker processes 2; worker cpu affinity 0101 1010;
envents 세그먼트 에서 집중 적 으로 연결 요청 과 직렬 방식 으로 새 연결 에 접속 합 니 다.
events {worker connections 1024; \ # 모든 worker 의 최대 연결 수. multi accepton; \ # 감 청 된 연결 요청 에 집중 적 으로 접속 할 지 여 부 는 기본 값 은 off 이 고 닫 을 때 한 번 에 하나의 연결 만 받 습 니 다. accept mutex on \ # 기본 값 은 on 입 니 다. 새 연결 에 직렬 로 접속 하 는 것 을 표시 합 니 다. off 시 HTTP 세그먼트 최적화, sendfile, keepalive timeout, gzip 은 ngi 입 니 다.검색엔진
총결산
위 에서 말 한 것 은 소 편 이 여러분 에 게 소개 한 nginx 배치 와 간단 한 최적화 입 니 다. 여러분 에 게 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.