摘要:于年發(fā)布,聚焦于高性能,高并發(fā)和低內(nèi)存消耗問題。二服務(wù)的啟停控制在講解配置文件參數(shù)前,讓我們先來了解一下的啟停操作吧。在講解配置項(xiàng)之前,讓我們先了解一下各個(gè)塊的作用。配置最大連接數(shù)設(shè)置允許每個(gè)同時(shí)開啟的最大連接數(shù),默認(rèn)值。
一、nginx簡介、
??nginx(發(fā)音"engine x")是俄羅斯軟件工程師Igor Sysoev開發(fā)的免費(fèi)開源web服務(wù)器軟件。nginx于2004年發(fā)布,聚焦于高性能,高并發(fā)和低內(nèi)存消耗問題。并且具有多種web服務(wù)器功能特性:負(fù)載均衡,緩存,訪問控制,帶寬控制,以及高效整合各種應(yīng)用的能力,這些特性使nginx很適合于現(xiàn)代網(wǎng)站架構(gòu)。目前,nginx已經(jīng)是互聯(lián)網(wǎng)上第二流行的開源web服務(wù)器軟件。
??三大服務(wù)器對(duì)比如圖所示:
??總體來說,nginx服務(wù)器將會(huì)是今后web server的主流服務(wù)器。
二、nginx服務(wù)的啟停控制??在講解nginx配置文件參數(shù)前,讓我們先來了解一下nginx的啟停操作吧。在Linux平臺(tái)下,控制nginx服務(wù)的啟停可不止有一種方法。
??在nginx服務(wù)器運(yùn)行時(shí),會(huì)保持著一個(gè)主進(jìn)程和多個(gè)work process工作進(jìn)程,如圖所示:
??我們通過給主進(jìn)程發(fā)送信號(hào)就可以控制服務(wù)的啟停了,那么如何給主進(jìn)程發(fā)送信號(hào)呢,首先需要知道主進(jìn)程號(hào)的PID,獲取PID有兩種途徑,通過ps命令就可以看到主進(jìn)程號(hào)PID了,圖中的8029就是PID;也可以通過nginx安裝目錄下log中的nginx.pid, Mac下在/usr/local/var/run/nginx.pid中,如圖所示:
1、nginx可接收的符號(hào)有
TERM 或 INT——快速停止nginx服務(wù)
QUIT——平緩?fù)V筺ginx服務(wù)
HUP——使用新的配置文件啟動(dòng)進(jìn)程,之后平緩?fù)V乖羞M(jìn)程,又叫平滑重啟
USER1——重新打開日志,常用于日志切割
USER2——使用新版本nginx,又叫平滑升級(jí)
WINCH——平緩?fù)V箇ork process,用于nginx服務(wù)器平滑升級(jí)
2、nginx啟動(dòng)參數(shù):
-c:配置文件
-t:檢查語法錯(cuò)誤
-p:更改安裝路徑
-q:只顯示錯(cuò)誤信息
3、nginx停止操作:
nginx -g TERM|INT|QUIT
或者
kill -9 | SIGKILL `~/log/nginx.pid`
重啟nginx:
nginx -g HUP [-c newconfigure]
4、升級(jí)nginx:
更改新安裝路徑
nginx -p newInstallPath
平滑升級(jí)
nginx -g USER2
平滑停止舊服務(wù)
nginx -g WINCH三、nginx配置參數(shù)詳解
??眾所周知,默認(rèn)的nginx配置文件都存放在安裝目錄的conf中,主配置文件名為nginx.conf,接下來我們會(huì)詳細(xì)介紹內(nèi)部的相關(guān)參數(shù)。
??先看下面的配置項(xiàng):
worker_processes 1; #全局有效 events { worker_connections 1024; #events部分有效 } http { include mime.types; #http部分有效 default_type applicaiotion/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; #http的server部分有效 location / { #http/server的location部分有效 root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
??由上段代碼可以看出,nginx.conf由三部分組成,全局塊、events塊和http塊。每個(gè)http塊又由http全局塊、多個(gè)server塊構(gòu)成。而每個(gè)server塊又包含多個(gè)server塊和多個(gè)location塊。
??在講解配置項(xiàng)之前,讓我們先了解一下各個(gè)塊的作用。
1、全局塊:主要影響nginx服務(wù)器整體運(yùn)行的配置指令,通常的配置有nginx用戶(組),work process數(shù),進(jìn)程、日志文件存放路徑以及配置文件引入等等。
2、events塊:主要影響nginx服務(wù)器與用戶的網(wǎng)絡(luò)連接,通常的配置有開啟對(duì)多work process下的網(wǎng)絡(luò)連接進(jìn)行序列化,是否允許同時(shí)接收多個(gè)網(wǎng)絡(luò)連接,每個(gè)work process同時(shí)支持的最大連接數(shù)等等。
3、http塊:nginx配置核心部分,代理、緩存和日志定義都放在這個(gè)模塊中,通常的配置有文件引入,mime-type定義,連接超時(shí)時(shí)間等等。
4、server塊:相當(dāng)于一臺(tái)虛擬主機(jī),通常的配置是虛擬主機(jī)的監(jiān)聽配置、名稱和IP配置。
5、location塊:相當(dāng)于server的一個(gè)指令,主要作用是基于nginx服務(wù)器接收到的請(qǐng)求字符串進(jìn)行匹配,對(duì)特定請(qǐng)求進(jìn)行處理,通常的配置有地址定向、數(shù)據(jù)緩存和應(yīng)答控制等等。
常用配置詳解:
配置work process數(shù):nginx服務(wù)器實(shí)現(xiàn)并發(fā)處理服務(wù)的關(guān)鍵,默認(rèn)為1
配置文件引入:include file; 可引入其他nginx配置或第三方配置到主配置文件中,支持相對(duì)路徑,引入的文件需要讀寫權(quán)限。
配置最大連接數(shù):work_connections設(shè)置允許每個(gè)work process同時(shí)開啟的最大連接數(shù),默認(rèn)值512。
配置連接超時(shí)時(shí)間:keepalive_timeout 默認(rèn)75s。
配置網(wǎng)絡(luò)監(jiān)聽:listen 可監(jiān)聽ip、端口和socket
listen 192.168.1.10:8000; #監(jiān)聽具體的ip和端口連接 listen 192.168.1.10; #監(jiān)聽具體ip的所有端口連接 listen 8000; #監(jiān)聽具體端口的所有IP連接,等同于listen *:8000
配置虛擬主機(jī)名稱:server_name 是指server塊對(duì)外提供的虛擬主機(jī),設(shè)置好主機(jī)的名稱和配置好DNS,就可以發(fā)送請(qǐng)求了。
配置location塊:匹配相關(guān)字符串
“=” 用于嚴(yán)格匹配 “~” 用于區(qū)分大小寫的正則表達(dá)式匹配 “~*” 用于不區(qū)分大小寫的正則表達(dá)式匹配 “^*” 用于匹配度最高的location匹配
配置網(wǎng)站默認(rèn)首頁:index file; file可以為多個(gè)文件名,依次進(jìn)行匹配,默認(rèn)為index.html
四、django框架下nginx和uwsgi搭建前提:已安裝django框架、nginx和uwsgi相關(guān)服務(wù)。
nginx相關(guān)配置如下:
uwsgi.py配置如下:
執(zhí)行:uwsgi --ini=uwsgi.ini
http://blog.csdn.net/hanhuili...
http://hai0378.iteye.com/blog...
http://blog.csdn.net/tjcyjd/a...
nginx高性能web服務(wù)器詳解(p22-p47)
http://www.runoob.com/django/...
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/39686.html
摘要:部署項(xiàng)目部署一個(gè)的開源框架。輪詢負(fù)載均衡在配置文件中添加如下配置,此配置有三臺(tái)服務(wù)器提供支付服務(wù)。缺省配置就是輪詢策略負(fù)載均衡支持和協(xié)議,只需要修改后面的協(xié)議即可支持的負(fù)載均衡只需將改為即可。 部署Django項(xiàng)目 Django+uWSGI+nginx 部署 django 一個(gè)pyhton的開源web框架。 uWSGI 一個(gè)基于自有的uwsgi協(xié)議、WSGI協(xié)議和http服務(wù)協(xié)議的w...
摘要:默認(rèn)情況下,它是。它也是一個(gè)安全度量,所以調(diào)整為你的應(yīng)用需要,而不是最大輸出。在運(yùn)行的時(shí)候會(huì)把中的靜態(tài)文件拷貝到這個(gè)目錄中達(dá)到從開發(fā)環(huán)境到生產(chǎn)環(huán)節(jié)過程中移植靜態(tài)文件的作用。 本文由云+社區(qū)發(fā)表本文主要講述了如何一步步在生產(chǎn)環(huán)境上部署django和vue,操作系統(tǒng)默認(rèn)為centos 說明:后文中出現(xiàn)的以下字符串均表示具體的路徑或者名稱,含義如下: DJANGO_DIR----表示dj...
摘要:默認(rèn)情況下,它是。它也是一個(gè)安全度量,所以調(diào)整為你的應(yīng)用需要,而不是最大輸出。在運(yùn)行的時(shí)候會(huì)把中的靜態(tài)文件拷貝到這個(gè)目錄中達(dá)到從開發(fā)環(huán)境到生產(chǎn)環(huán)節(jié)過程中移植靜態(tài)文件的作用。 本文由云+社區(qū)發(fā)表本文主要講述了如何一步步在生產(chǎn)環(huán)境上部署django和vue,操作系統(tǒng)默認(rèn)為centos 說明:后文中出現(xiàn)的以下字符串均表示具體的路徑或者名稱,含義如下: DJANGO_DIR----表示dj...
閱讀 2825·2023-04-25 18:46
閱讀 712·2021-11-19 09:40
閱讀 2078·2021-09-28 09:36
閱讀 3385·2021-09-10 11:11
閱讀 3466·2019-08-30 15:55
閱讀 1806·2019-08-30 15:54
閱讀 2599·2019-08-29 16:16
閱讀 3545·2019-08-29 15:08