NGINX 성능 및 리소스 사용을 모니터링하는 것은 웹 서버의 건강과 효율성을 유지하는 데 필수적입니다. 포괄적 인 모니터링을 달성 할 수있는 방법은 다음과 같습니다.
nginx 상태 페이지 :
Nginx는 현재 연결, 활성 연결 및 초당 요청에 대한 개요를 제공하는 내장 상태 페이지를 제공합니다. 이를 가능하게하려면 ngx_http_stub_status_module
포함하도록 nginx.conf
파일을 구성해야합니다. 당신이하는 방법은 다음과 같습니다.
<code class="nginx">location /nginx_status { stub_status; access_log off; allow 127.0.0.1; # Only allow access from localhost deny all; # Deny access from anywhere else }</code>
http://yourserver/nginx_status
방문 하여이 상태에 액세스 할 수 있습니다.시스템 수준 모니터링 :
top
, htop
또는 mpstat
와 같은 시스템 모니터링 도구를 사용하여 전체 CPU 및 메모리 사용량을 확인하십시오. 이 도구는 Nginx가 시스템 리소스를 활용하는 방법에 대한 실시간 통찰력을 제공합니다.iostat
사용하여 읽기/쓰기 작업을 모니터링하는데, 특히 서버가 많은 정적 컨텐츠를 처리하는 경우 NGINX 성능에 영향을 줄 수 있습니다.로그 분석 :
goaccess
와 같은 도구는 이러한 로그를 구문 분석하고 요청 수, 대역폭 및 방문한 URL과 같은 통계를 제시 할 수 있습니다.타사 모니터링 도구 :
Nginx 서버로드 및 응답 시간을 추적하기 위해 여러 도구를 사용할 수 있으며 각 도구는 다양한 기능과 세부 사항 수준을 제공합니다.
nginx 상태 모듈 :
Prometheus와 Grafana :
새로운 유물 :
Datadog :
goaccess :
NGINX CPU에 대한 실시간 모니터링 및 메모리 사용량 설정은 다음 단계를 통해 수행 할 수 있습니다.
모니터링 에이전트 설치 :
Prometheus 구성 :
Node Expler에서 메트릭을 긁어 내기 위해 Prometheus를 설정하십시오. prometheus.yml
구성 파일을 작성하고 노드 Expler에서 긁어내는 데 필요한 작업을 포함시켜야합니다.
<code class="yaml">scrape_configs: - job_name: 'nginx' static_configs: - targets: ['localhost:9100'] # Assuming Node Exporter is running on port 9100</code>
Grafana 설정 :
실시간 경고 :
모니터링 데이터를 기반으로 NGINX 성능을 최적화하기위한 모범 사례는 다음과 같습니다.
작업자 프로세스 조정 :
서버의 CPU 코어에 따라 작업자 프로세스 수를 조정하십시오. nginx.conf
에서 이것을 설정할 수 있습니다.
<code class="nginx">worker_processes auto;</code>
연결 처리 최적화 :
활성 연결 수를 모니터링하고 그에 따라 worker_connections
조정하십시오. 이것은 더 많은 동시 연결을 효율적으로 처리하는 데 도움이 될 수 있습니다.
<code class="nginx">events { worker_connections 1024; }</code>
캐싱 활성화 :
nginx.conf
에서 캐싱 구성 :
<code class="nginx">proxy_cache_path /path/to/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m;</code>
GZIP 압축 :
GZIP 압축을 활성화하여 네트워크를 통해 전송 된 데이터 양을 줄입니다. 대역폭 및 응답 시간을 모니터링하여 이점을 확인하십시오.
<code class="nginx">gzip on; gzip_vary on; gzip_proxied any; gzip_comp_level 6; gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml rss text/javascript;</code>
로드 밸런싱 사용 :
버퍼 크기를 모니터링하고 조정합니다.
모니터링 데이터를 기반으로 proxy_buffer_size
및 proxy_buffers
와 같은 버퍼 크기를 조정하여 대형 파일 전송 또는 트래픽 사이트의 성능을 최적화하십시오.
<code class="nginx">proxy_buffer_size 128k; proxy_buffers 4 256k; proxy_busy_buffers_size 256k;</code>
Nginx를 업데이트하십시오.
이러한 모범 사례를 따르고 NGINX 서버를 지속적으로 모니터링하면 성능을 최적화하고 다양한로드 하에서 효율적으로 실행할 수 있습니다.
위 내용은 NGINX 성능 및 리소스 사용량을 어떻게 모니터링합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!