nginx在linux系統應用詳解之一基礎介紹和全局配置

一、nginx簡介

      1、特點:

          (1)nginx服務器既可以作為HTTP服務器,也可以作為反向代理服務器,還可以作為郵件服務器;

          (2)能夠快速響應靜態頁面的請求;

          (3) 支持 FastCGI、SSl、VirtualHost、URLRewirte、HTTP Basic Auth 、Gzip等大量使用功能;并且支持共多的第三方功能模塊的擴展 

      2、nginx三類基礎功能介紹

          (1)作為HTTP服務器

                 A、處理靜態文件(如HTML靜態網頁);處理索引文件以及支持自動索引

                 B、支持HTTP下的安全套接層協議SSL

                 C、支持基于IP和servername的虛擬主機設置

                 D、支持重新加載配置以及在線升級時,不用中斷正在處理的請求

                 E、提供3XX-5XX錯誤代碼的重定向功能

                 F、提供遠程FastCGI服務

                 G、支持高并發鏈接

                 、、、眾多功能

          (2)反向代理服務器

                 反向代理是nginx服務器作為web服務器的主要功能之一

                 在提供反向代理服務方面,nginx服務器轉發前端請求性能穩定,并且后端轉發與業務配置相互分離,配置相當靈活

                 它還可以做到負載均衡,解決網絡負載,提高web服務性能。

          (3)支持郵件代理服務

                  支持IMAP和POP3認證

       3、Nginx的程序架構:

            master/worker

            一個master進程:負載加載和分析配置文件、管理worker進程、平滑升級

           一個或多個worker進程:處理并響應用戶請求

          緩存相關的進程:

                   cache loader:載入緩存對象

                   cache manager:管理緩存對象

           nginx在linux系統應用詳解之一基礎介紹和全局配置

二、全局配置段常見的配置指令:

      分類:

            正常運行必備的配置

            優化性能相關的配置

            用于調試及定位問題相關的配置

            事件驅動相關的配置

      1、正常運行必備的配置:

           打開Nginx朱配置文件/etc/nginx/nginx.conf看到全局配置段

                   nginx在linux系統應用詳解之一基礎介紹和全局配置

           (1)user user [group];

                   定義用戶和組工作進程使用的憑證。如果省略組,那么所屬組為用戶基本組。

           (2)pid /PATH/TO/PID_FILE;

                  指定存儲nginx主進程進程號碼的文件路徑;

           (3)include file | mask;

                   指明包含進來的其它配置文件片斷;

           (4)load_module file;1.10版本以后的可以使用DSO機制

                   指明要裝載的動態模塊;

                   查看已存在的模塊

                   nginx在linux系統應用詳解之一基礎介紹和全局配置

         2、性能優化相關的配置:

             (1)worker_processes number | auto;

                    worker進程的數量;通常應該等于小于當前主機的cpu的物理核心數;

                    auto:根據當前主機物理CPU核心數,自動設置work_proceeses數量

             (2)worker_cpu_affinity auto [cpumask];

                    將每一個work_processes進程綁定在一個CPU上

                   注意:如果不綁定即不啟用此項功能,那么worker進程在那個CPU上運行,不確定的,有可能造成在同一個運行服務時間內一個CPU上運行多個worker進程,而有的CPU上運行一個worker進程

             (3)worker_priority number;

                    指定worker進程的nice值,設定worker進程優先級;[-20,20]

             (4)worker_rlimit_nofile number;

                       worker進程所能夠打開的文件數量上限(默認為1024);

                     一個worker進程可以1024個并發,它就可以打開1024個套接字文件(不包括其 它文件),

             (5)worker_connections number;

                    單個worker進程所能處理的最大請求數量

              實驗一:

          手動指定worker進程數量和手動綁定CPU

          指定worker進程優先級為-8

          指定worer進程最大能打開的文件數量6000個(注意:此值要大于等于worker進程量和單個worker進程所能處理的請求數量的乘積)


           nginx在linux系統應用詳解之一基礎介紹和全局配置

                 語法檢查和重載配置文件

                  nginx在linux系統應用詳解之一基礎介紹和全局配置

                 查看nginxworker進程及所綁定的cpunice

                 nginx在linux系統應用詳解之一基礎介紹和全局配置

                可以看到一共4worker進程,nice值為-8 分別綁定在4CPU

            實驗二:

         自動獲取worker進程數量和自動綁定CPU

                nginx在linux系統應用詳解之一基礎介紹和全局配置

               語法檢查和重載配置文件

               nginx在linux系統應用詳解之一基礎介紹和全局配置 

              查看nginxworker進程及所綁定的cpu

              nginx在linux系統應用詳解之一基礎介紹和全局配置

              對比實驗一,可以看到功能生效情況一致,只不過worker進程的綁定位置改變

       3、調試、定位問題:

            (1)daemon on|off;

                    是否以守護進程方式運行Nignx;

            (2)master_process on|off;(主要用于開發測試)

                    是否以master/worker模型運行nginx;默認為on;

            (3)error_log file [level];它不是用rsyslog管理的。是自己本身的功能進行自我管理

       4、事件驅動相關的配置:

            events {

                      …

                     }

            (1)worker_connections number;

                    每個worker進程所能夠打開的最大并發連接數數量;

            (2)use method;

                   指明并發連接請求的處理方法;(有兩種epollselect(它限定1024

                   use epoll;

            (3)accept_mutex on | off;

                   處理新的連接請求的方法;on意味著由各worker輪流處理新請求,Off意味著每個新請求的到達都會通知所有的worker進程;

       基本的全局配置如下圖:

             nginx在linux系統應用詳解之一基礎介紹和全局配置

原創文章,作者:zq,如若轉載,請注明出處:http://www.www58058.com/78194

(0)
zqzq
上一篇 2017-06-19
下一篇 2017-06-19

相關推薦

欧美性久久久久