摘要:語(yǔ)法缺省值指定工作進(jìn)程數(shù)。語(yǔ)法缺省值制定錯(cuò)誤日志的存放位置和級(jí)別。默認(rèn)情況下會(huì)在時(shí)找出最適合系統(tǒng)的事件模型。語(yǔ)法默認(rèn)值作用域指定的目錄是準(zhǔn)確的,是指定目錄的上級(jí)目錄,并且該上級(jí)目錄要含有指定名稱(chēng)的同名目錄。
特性
高并發(fā)連接: 官方稱(chēng)單節(jié)點(diǎn)支持5萬(wàn)并發(fā)連接數(shù),實(shí)際生產(chǎn)環(huán)境能夠承受2-3萬(wàn)并發(fā)
內(nèi)存消耗少: 在3萬(wàn)并發(fā)連接下,開(kāi)啟10個(gè)nginx進(jìn)程僅消耗150M內(nèi)存 (15M*10=150M)
nginx原理(Unix I/O模型簡(jiǎn)介)初探nginx架構(gòu)
基本模塊# 使用的用戶(hù)和組 user nobody nobody; # 指定工作進(jìn)程數(shù) # 與CPU數(shù)目一致 worker_processes 2; # 錯(cuò)誤日志 # 可以使用 [ debug | info | notice | warn | error | crit ] 參數(shù) error_log /var/log/nginx/nginx_error.log crit; # 指定 pid 存放的路徑 pid /usr/local/nginx/nginx.pid
user
語(yǔ)法: user user [group]
缺省值: nobody nobody
指定Nginx Worker進(jìn)程運(yùn)行用戶(hù),默認(rèn)是nobody帳號(hào)。
worker_processes
語(yǔ)法: worker_processes number
缺省值: 1
指定工作進(jìn)程數(shù)。nginx可以使用多個(gè)worker進(jìn)程。
error_log
語(yǔ)法: error_log file [ debug | info | notice | warn | error | crit ]
缺省值: /logs/error.log
制定錯(cuò)誤日志的存放位置和級(jí)別。
pid
語(yǔ)法: pid file
進(jìn)程id存儲(chǔ)文件??梢允褂?kill -HUP cat /var/log/nginx.pid/ 對(duì)Nginx進(jìn)行配置文件重新加載。
include
語(yǔ)法: include file | *
缺省值: none
include 指令還支持像下面配置一樣的全局包含的方法,例如包含一個(gè)目錄下所有以".conf"結(jié)尾的文件: include vhosts/*.conf;
worker_cpu_affinity
綁定cpu可以減少進(jìn)程間的切換
events { # 使用epoll模型 use epoll; # 每個(gè)worker的最大連接數(shù) worker_connections 1024; }
use
語(yǔ)法:use [ kqueue | rtsig | epoll | /dev/poll | select | poll | eventport ]
如果在./configure的時(shí)候指定了不止一種事件模型,那么可以設(shè)置其中一個(gè),以便告訴nginx使用哪種事件模型。
默認(rèn)情況下nginx會(huì)在./configure時(shí)找出最適合系統(tǒng)的事件模型。
事件模型是指Nginx處理連接的方法。
worker_connections
語(yǔ)法:worker_connections number
通過(guò)worker_connections和worker_proceses可以計(jì)算出maxclients: max_clients = worker_processes * worker_connections
作為反向代理,max_clients為: max_clients = worker_processes * worker_connections/4 ,因?yàn)闉g覽器訪問(wèn)時(shí)會(huì)通過(guò)連接池建立多個(gè)連接。
http { #配置一臺(tái)虛擬機(jī) server { listen 80; server_name www.linuxidc.com; access_log logs/linuxidc.access.log main; location / { index index.html; root /var/www/linuxidc.com/htdocs; } } }
三個(gè)作用域:http, server, location
server
語(yǔ)法:server {...}
作用域: http
配置一臺(tái)虛擬機(jī)。
listen
語(yǔ)法: listen address:port [ default [ backlog=num | rcvbuf=size | sndbuf=size | accept_filter=filter | deferred | bind | ssl ]
默認(rèn)值: listen 80
作用域: server
指定當(dāng)前虛擬機(jī)的監(jiān)聽(tīng)端口。
location
語(yǔ)法: location [=|~|~*|^~] /uri/ { ... }
作用域: server
配置訪問(wèn)路徑的處理方法。
root
語(yǔ)法: root path
默認(rèn)值:root html
作用域:http, server, location
alias指定的目錄是準(zhǔn)確的,root是指定目錄的上級(jí)目錄,并且該上級(jí)目錄要含有l(wèi)ocation指定名稱(chēng)的同名目錄。
alias
語(yǔ)法: alias file-path|directory-path;
作用域: location
該指令設(shè)置指定location使用的路徑.注意它跟 root 相似,但是不改變文件的根路徑,僅僅是使用文件系統(tǒng)路徑
區(qū)別:
location /abc/ { alias /home/html/abc/; }
在這段配置下,www.xxx/abc/a.html就指定的是/home/html/abc/a.html。這段配置亦可改成
location /abc/ { root /home/html/; }
這樣,nginx就會(huì)去找/home/html/目錄下的abc目錄了,得到的結(jié)果是相同的。
示列配置 反向代理http { # 負(fù)載均衡配置,可以配置多個(gè) upstream WB { # 設(shè)置負(fù)載均衡策略為ip_hash,會(huì)根據(jù)請(qǐng)求來(lái)源ip做hash,同一個(gè)C類(lèi)地址網(wǎng)段hash值相同 ip_hash; # 反向代理到后臺(tái)應(yīng)用服務(wù)器節(jié)點(diǎn)上 server 192.168.4.1:8080; server 192.168.4.2:8080; } server { location / { proxy_connect_timeout 3; proxy_send_timeout 30; proxy_read_timeout 30; # 配置所有請(qǐng)求都會(huì)分發(fā)到 WB 這個(gè)負(fù)載均衡器上 proxy_pass http://WB/; expires 1d; } } }https
server { listen 443; ssl on; ssl_certificate /usr/local/nginx/server.crt; ssl_certificate_key /usr/local/nginx/server.key; error_page 497 https://$host$uri?$args; }緩存靜態(tài)化文件
server { location ~* .(gif|jpg|jpeg|png|css|js|ico|html)$ { root /usr/local/nginx/html/; expires 3d; } }參考資料
官方文檔
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/40572.html
摘要:使用心得隨著信息技術(shù)的飛速發(fā)展,系統(tǒng)架構(gòu)設(shè)計(jì)面對(duì)更專(zhuān)業(yè)軟件開(kāi)發(fā)職責(zé)更明確的發(fā)展。同時(shí)利用開(kāi)源技術(shù),吸引業(yè)界優(yōu)秀人才的共同努力下,系統(tǒng)功能越來(lái)越完善。使成為很完善很強(qiáng)大的一個(gè)平臺(tái)。執(zhí)行啟動(dòng)時(shí),報(bào)錯(cuò)誤。 使用jeecg-boot心得????隨著信息技術(shù)的飛速發(fā)展,系統(tǒng)架構(gòu)設(shè)計(jì)面對(duì)更專(zhuān)業(yè)、軟件開(kāi)發(fā)職責(zé)更明確的發(fā)展。如今流行的微服務(wù)、前后端分離、Docker容器虛擬化待新技術(shù),Jeecg-bo...
摘要:如何才能成為一名專(zhuān)業(yè)的開(kāi)發(fā)者資深開(kāi)發(fā)者在其博客上分享了一些心得。要想成為一個(gè)專(zhuān)業(yè)的程序員,首先要成為一個(gè)中級(jí)程序員。永遠(yuǎn)不要低估陪伴的力量結(jié)論當(dāng)你專(zhuān)注于實(shí)踐上面所提到各種方法的時(shí)候,你就在成為專(zhuān)業(yè)開(kāi)發(fā)者的路上。 如何才能成為一名專(zhuān)業(yè)的PHP開(kāi)發(fā)者?資深Web開(kāi)發(fā)者Bruno Skvorc在其博客上分享了一些心得。 showImg(http://segmentfault.com/img...
摘要:控制數(shù)據(jù)流屬于最強(qiáng)的開(kāi)發(fā)規(guī)范,必定會(huì)給開(kāi)發(fā)業(yè)務(wù)的同學(xué)帶來(lái)巨大的思維挑戰(zhàn),從系統(tǒng)整體質(zhì)量和維護(hù)性來(lái)看,必須犧牲業(yè)務(wù)開(kāi)發(fā)的編程自由度。 引入的背景 在一個(gè)龐大的商業(yè)系統(tǒng)中引入react這種數(shù)據(jù)驅(qū)動(dòng)的模式。 希望能夠一點(diǎn)點(diǎn)重構(gòu)去替換以前的模塊,逐步的將系統(tǒng)重要部分底層框架替換成react。 同事實(shí)踐的心得 以下內(nèi)容都摘自同事使用后的一些感想 心得一 從過(guò)程化開(kāi)發(fā)向面向數(shù)據(jù)的開(kāi)發(fā)轉(zhuǎn)化。后者要...
摘要:前端最基礎(chǔ)的就是。我這邊預(yù)期準(zhǔn)備進(jìn)入中級(jí)階段,中間還是會(huì)穿插一些實(shí)戰(zhàn)。語(yǔ)法精確匹配,匹配成功,則停止搜索正則不能有嵌套的。指令會(huì)根據(jù)在配置文件中出現(xiàn)的順序依次執(zhí)行,可以使用來(lái)終止接下來(lái)的處理。如果以或者或者,則停止處理,立刻重定向。 前端最基礎(chǔ)的就是 HTML+CSS+Javascript。掌握了這三門(mén)技術(shù)就算入門(mén),但也僅僅是入門(mén),現(xiàn)在前端開(kāi)發(fā)的定義已經(jīng)遠(yuǎn)遠(yuǎn)不止這些。前端小課堂(HTM...
閱讀 1166·2023-04-25 17:28
閱讀 3617·2021-10-14 09:43
閱讀 3978·2021-10-09 10:02
閱讀 1951·2019-08-30 14:04
閱讀 3142·2019-08-30 13:09
閱讀 3279·2019-08-30 12:53
閱讀 2907·2019-08-29 17:11
閱讀 1833·2019-08-29 16:58