APP開發(fā)在后臺制作常用工具Nginx進程解析實操經驗分享:
正常工作的Nginx有多個進程,基本的有master process(稱為主進程)和worker process(稱為工作進程)
maste process:充當整個進程組與用戶交互的接口,維護并監(jiān)控worker process。不處理具體的業(yè)務,只把相應的信息發(fā)到worker process。其同時負責Nginx的平滑重啟、配置文件生效、關閉等。
worker process:處理具體的任務。
Nginx中master和worker的工作流程如圖5-2所示。
APP開發(fā)關于Nginx常用配置
Nginx的配置文件nginx.conf是純文本書件,位于Nginx安裝目錄的couf目錄下,整個配置文件是以塊的形式組織。每個塊以“{}”來表示,采用嵌套的方式,一個大塊中可以包括小塊。最大的塊是mnain塊,maln塊里包含event塊和http塊.http塊包含了upstre砌塊和server塊.server塊包含了多個location塊,整個配置文件的結構如圖5-3所示。
每個模塊的含義如下
·main: Nginx的全局屬性配置。
. event: Ngiux的工作模式及連接數(shù)上限
·littp: http服務器相關屬性的配置。
. upstream:負載均衡屬}生的配置。
. server:虛擬工機的配置。
·location: location的配置。
圖5-3Ngjnx配置文件姑構圖
下面通過個Nginx的配置實例根據上面介紹的Nginx配置文件的6大塊,詳細介紹Ngiux每個指令的含義
APP開發(fā)對于Nginx的全局配置
Nginx全局配置的代碼如下
user www www;
worker_processes 4;
error_log /home/wwwlogs/nginx_error.log crit,
pid /us r/local/nginx/logs/nginx .pid;
worker rlimit_nofile 52000;
這段代碼中每個配置的含義如下。
·user:指定了Nginxl作進程運行的用戶及用戶組,默認是nobody,這個配置文件是使用了用戶www和用戶組www。
·worker_processes:指定Nginx開啟的工作進程數(shù)。每個進程大約占用10-12MB的內存。如果是多核的CPU,這里應設置和CPU核數(shù)樣的
進程數(shù)。
·error_log:全局錯誤日志的位置與日志輸出的級別。日志的輸出級別可選擇debug、info. notice. warn. error. crit,其中debug級別輸出的日志最詳細。當運維人員查找問題時,錯誤日志是非常重要的參考。
·pid:存儲Nginx進程id的文件路徑。
·worker_rlimit_nofile:指定了個Nginx進程最多可以打開的文件描述符。注意,這里的配置受限于Linux中最多可以打開的文件描述符
配置。關于Linux配置的詳解,請參考本站關于增大文件描述符”。如果Nginx的錯誤日志中出現(xiàn)錯誤提示“Too m any open files”,運維人員就需要調整這個值了。深圳APP開發(fā)公司-博納網絡關于APP項目開發(fā)對于后臺制作程序猿工具使用經驗分享本文就到這里。喜歡本站的朋友請持續(xù)關注本站,我們會定期連續(xù)分享APP后臺開發(fā)制作經驗。博納網絡編輯整理。