목차
nginx 소개:
Linux 시스템에서 nginx를 최적화하는 구체적인 방법
Linux 시스템이란 무엇입니까
운영 및 유지보수 엔진스 Linux 시스템에서 nginx를 최적화하는 방법

Linux 시스템에서 nginx를 최적화하는 방법

May 12, 2023 pm 08:34 PM
linux nginx

nginx 소개:

  • Nginx Nginx(엔진 x)는 고성능 HTTP 및 역방향 프록시 웹 서버이고, Nginx는 경량 웹 서버/역방향 프록시 서버입니다.

  • 떠오르는 스타 , Nginx의 매력은 많은 사람들을 그의 품에 빠지게 만들었습니다. 구성이 간단하고 구현 원리도 간단합니다. 로드 밸런싱 작업을 수행하는 것보다 더 좋은 것은 없습니다.

Linux 시스템에서 nginx를 최적화하는 구체적인 방법

1. Nginx 동시성 최적화

 [root@proxy ~]# ab -n 2000 -c 2000 http://192.168.4.5/
 Benchmarking 192.168.4.5 (be patient)
 socket: Too many open files (24)                //提示打开文件数量过多
로그인 후 복사

 동시성을 높이기 위해 Nginx 구성 파일 수정

 [root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
 .. ..
 worker_processes  2;                    //与CPU核心数量一致
 events {
 worker_connections 65535;        //每个worker最大并发连接数
 use epoll;
 }
 .. ..
 [root@proxy ~]# nginx -s reload
로그인 후 복사

2.

 [root@proxy ~]# ulimit -a                        //查看所有属性值
 [root@proxy ~]# ulimit -Hn 100000                //设置硬限制(临时规则)
 [root@proxy ~]# ulimit -Sn 100000                //设置软限制(临时规则)
 [root@proxy ~]# vim /etc/security/limits.conf
     .. ..
 *               soft    nofile            100000
 *               hard    nofile            100000
 #该配置文件分4列,分别如下:
 #用户或组    硬限制或软限制    需要限制的项目   限制的值
로그인 후 복사

  최적화 후 서버 동시성 테스트

 [root@proxy ~]# ab -n 2000 -c 2000 http://192.168.4.5/
로그인 후 복사

3. Nginx 패킷 헤더 캐시 최적화

 [root@proxy ~]# cat lnmp_soft/buffer.sh
 #!/bin/bash
 URL=http://192.168.4.5/index.html?
 for i in {1..5000}
 do
     URL=${URL}v$i=$i
 done
 curl $URL                                //经过5000次循环后,生成一个长的URL地址栏
 [root@proxy ~]# ./buffer.sh
 .. ..
 414 Request-URI Too Large        //提示头部信息过大
로그인 후 복사

Nginx 구성 파일을 수정하고 패킷 헤더 캐시 크기를 늘립니다

 [root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
 .. ..
 http {
 client_header_buffer_size    1k;        //默认请求包头信息的缓存    
 large_client_header_buffers  4 4k;        //大请求包头部信息的缓存个数与容量
 .. ..
 }
 [root@proxy ~]# nginx -s reload
로그인 후 복사

4.

 [root@proxy ~]# cat /usr/local/nginx/conf/nginx.conf
 http {
 .. ..
 gzip on;                            //开启压缩
 gzip_min_length 1000;                //小文件不压缩
 gzip_comp_level 4;                //压缩比率
 gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
                                     //对特定文件压缩,类型参考mime.types
 .. ..
로그인 후 복사

5. 서버 메모리 캐시

 http {
 open_file_cache          max=2000  inactive=20s;
         open_file_cache_valid    60s;
         open_file_cache_min_uses 5;
         open_file_cache_errors   off;
 //设置服务器最大缓存2000个文件句柄,关闭20秒内无请求的文件句柄
 //文件句柄的有效时间是60秒,60秒后过期
 //只有访问次数超过5次会被缓存
 }
로그인 후 복사

6. 정적 데이터의 브라우저 로컬 캐시

 [root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
 server {
         listen       80;
         server_name  localhost;
         location / {
             root   html;
             index  index.html index.htm;
         }
 location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ {
 expires        30d;            //定义客户端缓存时间为30天
 }
 }
 [root@proxy ~]# cp /usr/share/backgrounds/day.jpg /usr/local/nginx/html
 [root@proxy ~]# nginx -s reload
로그인 후 복사

Linux 시스템이란 무엇입니까

Linux는 UNIX와 유사한 운영 체제로 자유롭게 사용하고 배포할 수 있습니다. POSIX의 다중 사용자, 다중 작업, 다중 스레드 및 다중 CPU 운영 체제를 기반으로 하는 시스템으로 Linux를 사용하여 주요 Unix 도구 소프트웨어, 응용 프로그램 및 네트워크 프로토콜을 실행할 수 있습니다.

위 내용은 Linux 시스템에서 nginx를 최적화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Gitee Pages 정적 웹 사이트 배포 실패 : 단일 파일 문제를 해결하고 해결하는 방법 404 오류? Gitee Pages 정적 웹 사이트 배포 실패 : 단일 파일 문제를 해결하고 해결하는 방법 404 오류? Apr 04, 2025 pm 11:54 PM

GiteEpages 정적 웹 사이트 배포 실패 : 404 오류 문제 해결 및 해결시 Gitee ...

H5 프로젝트를 실행하는 방법 H5 프로젝트를 실행하는 방법 Apr 06, 2025 pm 12:21 PM

H5 프로젝트를 실행하려면 다음 단계가 필요합니다. Web Server, Node.js, 개발 도구 등과 같은 필요한 도구 설치. 개발 환경 구축, 프로젝트 폴더 작성, 프로젝트 초기화 및 코드 작성. 개발 서버를 시작하고 명령 줄을 사용하여 명령을 실행하십시오. 브라우저에서 프로젝트를 미리보고 개발 서버 URL을 입력하십시오. 프로젝트 게시, 코드 최적화, 프로젝트 배포 및 웹 서버 구성을 설정하십시오.

C 언어로 멀티 스레딩을 구현하는 4 가지 방법 C 언어로 멀티 스레딩을 구현하는 4 가지 방법 Apr 03, 2025 pm 03:00 PM

언어의 멀티 스레딩은 프로그램 효율성을 크게 향상시킬 수 있습니다. C 언어에서 멀티 스레딩을 구현하는 4 가지 주요 방법이 있습니다. 독립 프로세스 생성 : 여러 독립적으로 실행되는 프로세스 생성, 각 프로세스에는 자체 메모리 공간이 있습니다. 의사-다일리트 레딩 : 동일한 메모리 공간을 공유하고 교대로 실행하는 프로세스에서 여러 실행 스트림을 만듭니다. 멀티 스레드 라이브러리 : PTHREADS와 같은 멀티 스레드 라이브러리를 사용하여 스레드를 만들고 관리하여 풍부한 스레드 작동 기능을 제공합니다. COROUTINE : 작업을 작은 하위 작업으로 나누고 차례로 실행하는 가벼운 다중 스레드 구현.

Web.xml을 열는 방법 Web.xml을 열는 방법 Apr 03, 2025 am 06:51 AM

Web.xml 파일을 열려면 다음 방법을 사용할 수 있습니다. 텍스트 편집기 (예 : 메모장 또는 문자 메시지)를 사용하여 통합 개발 환경 (예 : Eclipse 또는 NetBeans)을 사용하여 명령을 편집하십시오 (Windows : Notepad Web.xml; Mac/Linux : Open -A Texted web.xml).

가장 잘 사용되는 Linux는 무엇입니까? 가장 잘 사용되는 Linux는 무엇입니까? Apr 03, 2025 am 12:11 AM

Linux는 서버 관리, 임베디드 시스템 및 데스크탑 환경으로 사용되는 것이 가장 좋습니다. 1) 서버 관리에서 Linux는 웹 사이트, 데이터베이스 및 응용 프로그램을 호스팅하는 데 사용되어 안정성과 안정성을 제공합니다. 2) 임베디드 시스템에서 Linux는 유연성과 안정성으로 인해 스마트 홈 및 자동차 전자 시스템에서 널리 사용됩니다. 3) 데스크탑 환경에서 Linux는 풍부한 응용 프로그램과 효율적인 성능을 제공합니다.

GO를 사용하여 Oracle 데이터베이스에 연결할 때 Oracle 클라이언트를 설치해야합니까? GO를 사용하여 Oracle 데이터베이스에 연결할 때 Oracle 클라이언트를 설치해야합니까? Apr 02, 2025 pm 03:48 PM

GO를 사용하여 Oracle 데이터베이스에 연결할 때 Oracle 클라이언트를 설치해야합니까? GO에서 개발할 때 Oracle 데이터베이스에 연결하는 것이 일반적인 요구 사항입니다 ...

C 언어 조건부 편집 : 초보자가 실제 응용 프로그램에 대한 자세한 안내서 C 언어 조건부 편집 : 초보자가 실제 응용 프로그램에 대한 자세한 안내서 Apr 04, 2025 am 10:48 AM

C 언어 조건부 컴파일은 컴파일 시간 조건을 기반으로 코드 블록을 선택적으로 컴파일하는 메커니즘입니다. 입문 방법에는 다음이 포함됩니다. #IF 및 #ELSE 지시문을 사용하여 조건에 따라 코드 블록을 선택합니다. 일반적으로 사용되는 조건부 표현에는 STDC, _WIN32 및 LINUX가 포함됩니다. 실제 사례 : 운영 체제에 따라 다른 메시지를 인쇄합니다. 시스템의 숫자 수에 따라 다른 데이터 유형을 사용하십시오. 컴파일러에 따라 다른 헤더 파일이 지원됩니다. 조건부 컴파일은 코드의 휴대 성과 유연성을 향상시켜 컴파일러, 운영 체제 및 CPU 아키텍처 변경에 적응할 수 있도록합니다.

libv는 두입니다 libv는 두입니다 Apr 03, 2025 pm 08:03 PM

Lua-Libuv라는 프로젝트를 개발했으며 내 경험을 공유하게되어 기쁩니다. 이 프로젝트의 원래 의도는 Libuv (C로 작성된 비동기 I/O 라이브러리)를 사용하여 C 언어를 심층적으로 배울 필요없이 간단한 HTTP 서버를 구축하는 방법을 탐색하는 것입니다. Chatgpt의 도움으로 Http.c의 기본 코드를 완료했습니다. 지속적인 연결을 다룰 때 적절한 시간에 연결을 닫고 리소스를 자유롭게하는 것을 성공적으로 구현했습니다. 처음에는 연결을 닫아 기본 프로그램을 종료 한 간단한 서버를 만들려고했지만 문제가있었습니다. 스트리밍을 사용하여 데이터 블록을 전송하려고 시도했지만 작동하는 동안 메인 스레드가 차단됩니다. 결국, 나는 내 목표가 C 언어를 깊이 배우는 것이 아니기 때문에이 접근법을 포기하기로 결정했습니다. 마지막으로, 나는

See all articles