nginx 최적화 관리
1. nginx 역사
Nginx 는 러시아인 들 이 작성 한 매우 경량급 HTTP 서버 입 니 다. Nginx 는 발음 이 "engine X" 이 고 고성능 HTTP 와 역방향 프 록 시 서버 이 며 IMAP / POP 3 / SMTP 프 록 시 서버 입 니 다. Nginx 는 러시아인 Igor Sysoev 가 러시아 방 문 량 에서 두 번 째 로 많은 Rambler. ru 사이트 에서 개발 되 었 습 니 다.
2. nginx 네트워크 모델
Nginx 는 이벤트 구동 (epoll) 방식 으로 작성 되 었 기 때문에 매우 좋 은 성능 을 가지 고 있 으 며 매우 효율 적 인 역방향 에이전트, 부하 균형 이기 도 합 니 다.Lighttpd 와 일치 하 는 성능 을 가지 고 있 으 며, Lighttpd 의 메모리 누 출 문제 도 없 으 며, Lighttpd 의 modproxy 에 도 문제 가 있 고 오랫동안 업데이트 되 지 않 았 습 니 다.그러나 Nginx 는 cgi 방식 의 실행 을 지원 하지 않 습 니 다. 이 로 인해 발생 하 는 프로그램의 빈틈 을 줄 일 수 있 기 때 문 입 니 다.그래서 반드시 FastCGI 방식 으로 PHP 프로그램 을 실행 해 야 한다.
3. nginx 특성
nginx 는 HTTP 서버 로 서 다음 과 같은 몇 가지 기본 기능 이 있 습 니 다.
4. nginx 장점
5. 압력 측정 도구 ab 의 사용
ab -n 10 -c 10 http://opslinux.com/
#-n ,
#-c ( -n )
# , 。
다음 과 같은 정 보 를 되 돌려 줍 니 다 (빨간색 부분 은 제 설명 입 니 다).
This is ApacheBench, Version 2.0.40-dev apache-2.0
Copyright 1996 Adam Twiss, Zeus Technology Ltd, [http://www.zeustech.net/](http://www.zeustech.net/)
Copyright 2006 The Apache Software Foundation, [http://www.apache.org/](http://www.apache.org/)
Benchmarking http://www.yi1.com.cm/ (be patient)…..done
Server Software: Apache/2.2.4
Server Hostname: [http://opslinux.com/](http://opslinux.com/)
Server Port: 80
Document Path: /
Document Length: 31848 bytes
Concurrency Level: 10
Time taken for tests: 1.722254 seconds/* */
Complete requests: 10/* */
Failed requests: 0/* */
Write errors: 0
Total transferred: 323490 bytes/* */
HTML transferred: 318480 bytes/*HTML */
Requests per second: 5.81 [#/sec] (mean)/* */
Time per request: 1722.254 [ms] (mean)/* */
Time per request: 172.225 [ms] (mean, across all concurrent requests)/* ( )*/
Transfer rate: 182.90 [Kbytes/sec] received/* */
Connection Times (ms)
min mean[+/-sd] median max
Connect: 165 166 1.2 167 168
Processing: 1300 1418 91.5 1427 1554
Waiting: 803 925 92.9 929 1064
Total: 1465 1585 92.2 1595 1721
Percentage of the requests served within a certain time (ms)
50% 1595/*50% 1595*/
66% 1620/*66% 1620*/
75% 1668
80% 1706
90% 1721
95% 1721
98% 1721
99% 1721
100% 1721 (longest request)/* 1721*/
2. 컴 파일 설치 과정 최적화
1. 프로필 수정
Nginx 를 컴 파일 할 때 기본적으로 debug 모드 로 진행 되 며, debug 모드 에 서 는 추적 과 ASSERT 같은 정 보 를 많이 삽입 합 니 다. 컴 파일 이 완료 되면 Nginx 는 여러 메가바이트 가 있어 야 합 니 다.컴 파일 하기 전에 Nginx 의 debug 모드 를 취소 합 니 다. 컴 파일 이 끝 난 후에 Nginx 는 수천 바이트 밖 에 없 기 때문에 컴 파일 하기 전에 관련 소스 코드 를 수정 하고 debug 모드 를 취소 할 수 있 습 니 다. 구체 적 인 방법 은 다음 과 같 습 니 다. Nginx 소스 코드 파일 이 압축 을 풀 린 후에 소스 디 렉 터 리 에 있 는 auto / cc / gcc 파일 을 찾 으 면 다음 과 같은 몇 줄 을 찾 을 수 있 습 니 다.
# debug
# CFLAGS=”$CFLAGS -g” //
2. 특정 CPU 를 위 한 CPU 타 입 컴 파일 최적화
Nginx 를 컴 파일 할 때 기본 GCC 컴 파일 매개 변 수 는 "- O" 입 니 다. GCC 컴 파일 을 최적화 하려 면 다음 두 개의 매개 변 수 를 사용 할 수 있 습 니 다.
--with-cc-opt='-O3' \
--with-cpu-opt=CPU # CPU , :pentium, pentiumpro, pentium3, pentium4, athlon, opteron, amd64, sparc32, sparc64, ppc64
CPU 종 류 를 확인 하려 면 다음 명령 을 사용 할 수 있 습 니 다.
cat /proc/cpuinfo | grep "model name"
3. 버 전 번호 숨 기기
nginx 설정 파일 의 http 탭 에 "server tokens off;" 인 자 를 추가 하면 server 태그 와 location 태그 에서 또는 소스 코드 에서 변경 할 수 있 습 니 다.
src/core/nginx.h
#define NGINX_VERSION "1.6.2" // 2.4.3
#define NGINX_VER "nginx/" Apache
src/http/ngx_http_header_filter_module.c
static char ngx_http_server_string[] ="Server:nginx" // apache
src/http/ngx_http_special_response.c
static u_char ngx_http_error_full_tail[] =
"
" NGINX_VER "" CRLF
"
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.