>  기사  >  백엔드 개발  >  nginx 역방향 프록시 최적화(파일 설명자)

nginx 역방향 프록시 최적화(파일 설명자)

WBOY
WBOY원래의
2016-08-08 09:24:211147검색

lsof 도구

파일 설명자는 프로세스에서 열린 각 파일과 소켓을 식별하는 간단한 정수입니다. 열린 첫 번째 파일은 0이고 두 번째 파일은 1입니다. Linux 운영 체제에서는 일반적으로 각 프로세스가 열 수 있는 파일 수에 제한을 두고 있으며 Linux에서는 일반적으로 시스템 수준 제한이 1024입니다.
동시성이 증가하면 원래 시스템의 기본 1024개 파일 설명자는 확실히 충분하지 않게 됩니다. 시간이 길어질수록 시스템은 다음 오류를 보고할 수 있습니다.

열린 파일 제한…..

nginx 프로세스가 차지하는 파일 설명자를 보려면 다음 명령을 실행할 수 있습니다:

<code>lsof <span>| grep nginx</span></code>

부분 결과

<code>nginx     <span>6845</span>    nobody    <span>6</span>u     <span>IPv4</span><span>179045</span>      0t<span>0</span><span>TCP</span> *<span>:http</span> (<span>LISTEN</span>)
nginx     <span>6845</span>    nobody    <span>7</span>u     <span>IPv4</span><span>179046</span>      0t<span>0</span><span>TCP</span> *<span>:ddi-tcp-</span><span>1</span> (<span>LISTEN</span>)
nginx     <span>6845</span>    nobody    <span>8</span>u     unix <span>0xffff88005eda0c80</span>      0t<span>0</span><span>179050</span> socket
nginx     <span>6845</span>    nobody    <span>9</span>u      <span>REG</span><span>0</span>,<span>9</span><span>0</span><span>3660</span> anon_inode
nginx     <span>6845</span>    nobody   <span>10</span>u      <span>REG</span><span>0</span>,<span>9</span><span>0</span><span>3660</span> anon_inode</code>

*참고: 두 번째 줄은 nginx의 프로세스 번호입니다

<code><span># 统计nginx进程打开了多少个文件数可以用下边的命令</span>lsof <span>|grep nginx|wc –l</span></code>

방법 1:

위 결과의 두 번째 열은 nginx의 프로세스 번호입니다

<code><span>cd</span> /prec/<span>6845</span></code>


이 프로세스로 생성된 파일을 확인한 다음 제한 파일을 보면

<code>more limits</code>


여덟 번째 줄인 Max open files은 51200입니다(기본값은 1024).

nginx.conf의 상단 상자에 한 줄을 추가했기 때문입니다.

<code>worker_rlimit_nofile 51200;</code>

방법 2:

실행:

<code>ulimit <span>-a</span></code>


실행:

<code>ulimit <span>-SHn</span><span>65535</span></code>

그런 다음

방법 3:

<code>[root<span>@localhost</span><span>6845</span>]# sysctl -a | grep <span>file</span>-<span>max</span>
fs.<span>file</span>-<span>max</span> = <span>201604</span>
[root<span>@localhost</span><span>6845</span>]#</code>

실행:

<code>[root<span>@localhost</span><span>6845</span>]# sysctl -w fs.<span>file</span>-<span>max</span>=<span>65535</span>
fs.<span>file</span>-<span>max</span> = <span>65535</span>
[root<span>@localhost</span><span>6845</span>]# sysctl -a | grep <span>file</span>-<span>max</span>
fs.<span>file</span>-<span>max</span> = <span>65535</span></code>

원하는 경우 영구적으로 만들려면

<code>vim /etc/sysctl<span>.conf</span></code>

파일을 편집하고

<code>fs.<span>file</span>-<span>max</span>=<span>65535</span></code>

줄을 추가한 후 다음 명령을 실행하여 적용합니다.

<code>sysctl <span>-p</span></code>

위 내용은 내용의 측면을 포함하여 nginx 역방향 프록시 최적화(파일 설명자)를 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

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