国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

淺談Nginx性能調(diào)優(yōu)

系統(tǒng) Linux
Nginx能夠優(yōu)化的地方非常多,本文只涉及到了其中很小的一些方面,但也足夠滿足我們的使用場(chǎng)景了。

[[354733]]

 Linux系統(tǒng)參數(shù)優(yōu)化

下文中提到的一些配置,需要較新的Linux(2.6以上)內(nèi)核才能夠支持,筆者使用的CentOS 7.4,內(nèi)核版本3.10,如果不滿足需要的話,最好進(jìn)行相應(yīng)的升級(jí),畢竟打補(bǔ)丁是件費(fèi)力不討好的事情。對(duì)于系統(tǒng)層面的調(diào)優(yōu),通常我們修改文件描述符限制、緩沖區(qū)隊(duì)列長(zhǎng)度以及臨時(shí)端口數(shù)量就可以了。

文件描述符限制

由于每個(gè)TCP連接都要占用一個(gè)文件描述符,一旦文件描述符耗盡,新的連接到來(lái)就會(huì)返回“Too many open files”這樣的錯(cuò)誤,為了提高性能,我們需要對(duì)其進(jìn)行修改:1.系統(tǒng)層級(jí)的限制 編輯文件 /etc/sysctl.conf,添加如下內(nèi)容: 

  1. 1.  `fs.file-max =10000000 
  2. 2.  `fs.nr_open =10000000

2.用戶層級(jí)的限制 編輯文件 /etc/security/limits.conf,添加以下內(nèi)容: 

  1. 1.  `*      hard   nofile      1000000`  
  2. 2.  `*      soft   nofile      1000000` 

這里我們只要保證用戶層級(jí)限制不大于系統(tǒng)層級(jí)限制就可以了,否則可能會(huì)出現(xiàn)無(wú)法通過(guò)SSH登錄系統(tǒng)的問(wèn)題。修改完畢執(zhí)行如下命令: 

  1. 1.  `$ sysctl -p` 

可以通過(guò)執(zhí)行命令 ulimit -a查看是否修改成功。

TCP連接隊(duì)列長(zhǎng)度

編輯文件 /etc/sysctl.conf,添加如下內(nèi)容: 

  1. 1.  `# The length of the syn quene`  
  2. 2.  `net.ipv4.tcp_max_syn_backlog =65535 
  3. 3.  `# The length of the tcp accept queue`  
  4. 4.  `net.core.somaxconn =65535

其中 tcp_max_syn_backlog用于指定半連接SYN隊(duì)列長(zhǎng)度,當(dāng)新連接到來(lái)時(shí),系統(tǒng)會(huì)檢測(cè)半連接SYN隊(duì)列,如果隊(duì)列已滿,則無(wú)法處理該SYN請(qǐng)求,并在 /proc/net/netstat中的 ListenOverflows和 ListenDrops中增加統(tǒng)計(jì)計(jì)數(shù)somaxconn用于指定全連接ACCEPT隊(duì)列長(zhǎng)度,當(dāng)該隊(duì)列滿了以后,客戶端發(fā)送的ACK包將無(wú)法被正確處理,并返回錯(cuò)誤"connection reset by peer"Nginx則會(huì)記錄一條error日志"no live upstreams while connecting to upstreams"如果出現(xiàn)以上錯(cuò)誤,我們需要考慮增大這兩項(xiàng)的配置。

臨時(shí)端口

由于Nginx用作代理,每個(gè)到上游Web服務(wù)的TCP連接都要占用一個(gè)臨時(shí)端口,因此我們需要修改 ip_local_port_range參數(shù) 修改 /etc/sysctl.conf文件,添加如下內(nèi)容: 

  1. 1.  `net.ipv4.ip_local_port_range =102465535 
  2. 2.  `net.ipv4.ip_local_reserved_ports =8080,8081,9000-9010`

其中,參數(shù) ip_local_reserved_ports用于指定保留端口,這是為了防止服務(wù)端口被占用而無(wú)法啟動(dòng)。

Nginx參數(shù)優(yōu)化

Nginx參數(shù)優(yōu)化主要圍繞 nginx.conf這個(gè)配置文件展開,下文不再贅述。

工作進(jìn)程

Nginx性能強(qiáng)大的一個(gè)重要原因在于它采用多進(jìn)程非阻塞I/O模型,因此我們要妥善利用這一點(diǎn):

  •  worker_processes  默認(rèn)的Nginx只有一個(gè)master進(jìn)程一個(gè)worker進(jìn)程,我們需要對(duì)其進(jìn)行修改,可以設(shè)置為指定的個(gè)數(shù),也可以設(shè)置為 auto,即系統(tǒng)的CPU核數(shù)。更多的worker數(shù)量將導(dǎo)致進(jìn)程間競(jìng)爭(zhēng)cpu資源,從而帶來(lái)不必要的上下文切換。因此這里我們將它設(shè)置為cpu的核數(shù)即可:    worker_processes   auto
  •  worker_connections 每個(gè)worker可以處理的并發(fā)連接數(shù),默認(rèn)值512不是很夠用,我們適當(dāng)將它增大:    worker_connections 4096
  •  Nginx支持以下I/O復(fù)用方法處理連接:select、 poll、 kqueue、 epoll、 rtsig、 /dev/poll、 eventport。它們分別適用于不同的操作系統(tǒng),其中 epoll是Linux系統(tǒng)上面效率最高的:    use epoll

KeepAlive

為了避免從Nginx到Web服務(wù)頻繁的建立、斷開連接,我們可以啟用從HTTP 1.1開始支持的KeepAlive長(zhǎng)連接特性,它可以大幅減少CPU和網(wǎng)絡(luò)開銷,在我們的實(shí)戰(zhàn)中也是對(duì)性能提高最大的一環(huán)。keepalive必須和 proxy_http_version與 proxy_set_header結(jié)合使用, 參考配置如下: 

  1. 1.  `upstream BACKEND {`  
  2. 2.  `    keepalive 300;`  
  3. 3.  `    server 127.0.0.1:8081;`  
  4. 4.  `}`  
  5. 5.  `server {`  
  6. 6.  `    listen 8080;`  
  7. 7.  `    location /{`  
  8. 8.  `        proxy_pass http://BACKEND;`  
  9. 9.  `        proxy_http_version 1.1;`  
  10. 10.  `        proxy_set_header Connection"";`  
  11. 11.  `}`  
  12. 12.  `}` 

其中 keepalive既非timeout,也不是連接池?cái)?shù)量,官方解釋如下:

The connections parameter sets the maximum number of idle keepalive connections to upstream servers that are preserved in the cache of each worker process. When this number is exceeded, the least recently used connections are closed.

可以看出它的意思是“最大空閑長(zhǎng)連接數(shù)量”,超出這個(gè)數(shù)量的空閑長(zhǎng)連接將被回收,當(dāng)請(qǐng)求數(shù)量穩(wěn)定而平滑時(shí),空閑長(zhǎng)連接數(shù)量將會(huì)非常小(接近于0),而現(xiàn)實(shí)中請(qǐng)求數(shù)量是不可能一直平滑而穩(wěn)定的,當(dāng)請(qǐng)求數(shù)量有波動(dòng)時(shí),空閑長(zhǎng)連接數(shù)量也隨之波動(dòng):

  •  當(dāng)空閑長(zhǎng)連接數(shù)量大于配置值時(shí),將會(huì)導(dǎo)致大于配置值的那部分長(zhǎng)連接被回收;
  •  當(dāng)長(zhǎng)連接不夠用時(shí),將會(huì)重新建立新的長(zhǎng)連接。

因此,如果這個(gè)值過(guò)小的話,就會(huì)導(dǎo)致連接池頻繁的回收、分配、再回收。為了避免這種情況出現(xiàn),可以根據(jù)實(shí)際情況適當(dāng)調(diào)整這個(gè)值,在我們實(shí)際情況中,目標(biāo)QPS為6000,Web服務(wù)響應(yīng)時(shí)間約為200ms,因此需要約1200個(gè)長(zhǎng)連接,而 keepalive值取長(zhǎng)連接數(shù)量的10%~30%就可以了,這里我們?nèi)?00,如果不想計(jì)算,直接設(shè)為1000也是可行的。

Access-Log緩存

記錄日志的I/O開銷比較高,好在Nginx支持日志緩存,我們可以利用這個(gè)功能,降低寫日志文件的頻率,從而提高性能。可以將 buffer和 flush兩個(gè)參數(shù)結(jié)合使用來(lái)控制緩存行為: 

  1. 1.  `access_log /var/logs/nginx-access.log buffer=64k gzip flush=1m

其中 buffer制定了緩存大小,當(dāng)緩沖區(qū)達(dá)到 buffer所指定的大小時(shí),Nginx就會(huì)將緩存起來(lái)的日志寫到文件中;flush指定了緩存超時(shí)時(shí)間,當(dāng) flush指定的時(shí)間到達(dá)時(shí),也會(huì)觸發(fā)緩存日志寫入文件操作。

文件描述符限制

上一節(jié)中已經(jīng)對(duì)Linux系統(tǒng)的文件描述符限制進(jìn)行了修改,Nginx配置中同樣有相應(yīng)的配置項(xiàng):worker_rlimit_nofile, 理論上這個(gè)值應(yīng)該設(shè)置為 /etc/security/limits.conf 中的值除以 worker_processes, 但實(shí)際中不可能每個(gè)進(jìn)程均勻分配,所以這里只要設(shè)置成和 /etc/security/limits.conf 一樣就可以了 

  1. 1.  `worker_rlimit_nofile 1000000;` 

總結(jié)

以上就是筆者進(jìn)行Nginx調(diào)優(yōu)的一些經(jīng)驗(yàn),可以看出基本是圍繞Nginx的Error日志展開的,之后又對(duì)一些比較大的性能瓶頸進(jìn)行了一些改進(jìn)。Nginx能夠優(yōu)化的地方非常多,本文只涉及到了其中很小的一些方面,但也足夠滿足我們的使用場(chǎng)景了。 

 

責(zé)任編輯:龐桂玉 來(lái)源: 運(yùn)維派
相關(guān)推薦

2023-11-11 19:07:23

JVMJava

2017-07-21 08:55:13

TomcatJVM容器

2012-06-20 11:05:47

性能調(diào)優(yōu)攻略

2021-03-04 08:39:21

SparkRDD調(diào)優(yōu)

2021-01-27 12:40:09

NginHTTPS前端

2011-03-10 14:40:54

LAMPMysql

2011-05-20 15:02:01

Oracle性能調(diào)優(yōu)

2011-11-14 10:28:23

2011-03-18 11:21:48

2019-05-20 15:28:27

流量 NginxLinux

2021-11-07 23:49:19

SQL數(shù)據(jù)庫(kù)工具

2012-06-21 09:43:45

2024-12-04 15:49:29

2013-02-28 10:15:14

Ubuntu性能調(diào)優(yōu)故障排查

2019-07-08 14:05:53

數(shù)據(jù)庫(kù)JVMSQL

2020-11-09 07:34:49

JVM性能監(jiān)控

2011-03-21 09:35:38

LAMP調(diào)優(yōu)網(wǎng)絡(luò)文件

2013-03-20 17:18:07

Linux系統(tǒng)性能調(diào)優(yōu)

2011-03-18 11:13:07

LAMP度量性能

2016-03-25 09:59:38

性能調(diào)優(yōu)LinuxMySQL
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

99tv成人| 成人激情小说网站| 91探花福利精品国产自产在线| 欧美日韩中文字幕在线| 人人干视频在线| 久久久亚洲一区| 91精品视频在线免费观看| 粉嫩久久久久久久极品| 亚洲精品日韩在线| 国产网站在线免费观看| 欧美色综合网站| 国内三级在线观看| 疯狂欧美牲乱大交777| 国产91久久久久蜜臀青青天草二| 中文子幕无线码一区tr| 99视频在线免费| 国产亚洲综合av| 国内自拍视频一区| 国产视频一区在线观看| 亚洲欧美自偷自拍另类| 国产精品久久久久久福利一牛影视 | 91桃色在线观看| 日韩欧美国产wwwww| 羞羞视频在线免费国产| 精品国产在天天线2019| 2001个疯子在线观看| 亚洲深夜福利在线| 黄色欧美视频| 国内精品久久久久影院 日本资源 国内精品久久久久伊人av | 最近2019年日本中文免费字幕 | 可以免费看的黄色网址| 精品一区二区在线观看| 国产在线观看欧美| 2023国产一二三区日本精品2022| 六月丁香婷婷在线| 日本一区二区不卡视频| caoporn超碰国产公开| 姬川优奈aav一区二区| 1769在线观看| 日韩成人在线免费观看| 中文幕av一区二区三区佐山爱| 国语自产精品视频在线看抢先版图片 | 精品久久久久久久久久久久| 黄页视频在线观看| 欧亚洲嫩模精品一区三区| 黄污视频在线观看| 欧美成人精品在线观看| 精品国产一区二区三区久久久蜜臀| 91久久在线视频| 日本网站在线观看一区二区三区| 少妇人妻无码专区视频| 亚洲黄色录像片| 久操视频在线免费播放| 深夜福利亚洲导航| 成人毛片在线| 自拍偷拍亚洲色图欧美| 欧美国产日韩精品免费观看| 你懂的免费在线观看| 亚洲精品一区二区久| 午夜先锋成人动漫在线| 亚洲永久免费| 国产成人综合av| 高清视频一区二区三区| 亚洲第一成人在线| 国产三级在线免费| 欧美α欧美αv大片| 国语精品视频| 91在线观看免费观看| 麻豆一区二区99久久久久| 国产一区视频免费观看| 色偷偷成人一区二区三区91| 自拍视频在线看| 午夜精品一区二区三区av| 午夜亚洲福利| 超级碰在线观看| 亚洲人成7777| 青春草免费在线视频| 91禁外国网站| 久久精品久久精品| 午夜刺激在线| 一区二区三区日韩在线| 亚洲精品网址| 99久久久无码国产精品6| 午夜精品福利一区二区三区蜜桃| 自拍一区在线观看| 国产专区欧美专区| 成人av在线一区二区三区| 麻豆app在线观看| 搡老女人一区二区三区视频tv| 全球成人免费直播| 秋霞无码一区二区| 欧美日韩成人高清| 美国成人xxx| 男女h黄动漫啪啪无遮挡软件| 五月婷婷久久丁香| 四虎地址8848精品| 日韩精品一区二区三区色偷偷 | 久久久www成人免费无遮挡大片| 成人免费在线观看| 2019中文字幕在线观看| 国产美女在线精品| 在线观看精品一区二区三区| 欧美在线视频网站| 97aⅴ精品视频一二三区| 成全电影大全在线观看| 亚洲一区精品电影| 亚洲精选视频免费看| 精品精品视频| avove在线观看| 91精品在线观看入口| 99热国内精品| 四虎4hutv紧急入口| 中文欧美日本在线资源| 日韩精品成人一区二区在线| 大地资源中文在线观看免费版| 日本成人激情视频| 久久色在线视频| 日本精品在线中文字幕| 午夜欧美性电影| 日韩一级高清毛片| 亚洲精品资源| yourporn在线观看中文站| 国产精品三级久久久久久电影| 国产精品久久久久久户外露出| 日韩精品中文字幕吗一区二区| 国产人妻777人伦精品hd| 精品视频在线播放| 精东粉嫩av免费一区二区三区| 成人国产免费电影| 免费在线观看91| 在线成人av网站| 亚洲永久免费| 宅男在线观看免费高清网站| 蜜桃传媒视频麻豆第一区免费观看 | 激情在线小视频| 国产精品伊人日日| 欧美日韩久久久一区| 欧美 日韩 国产一区二区在线视频 | www亚洲成人| 欧美国产精品日韩| 国产偷国产偷亚洲高清人白洁| 日韩欧乱色一区二区三区在线| 国产日韩av网站| 欧美激情精品久久久久久蜜臀| 国产在线精品播放| 美女扒开腿让男人桶爽久久动漫| 嫩草影院中文字幕| 免费欧美视频| 黄色大片中文字幕| 亚洲色图13p| a级精品国产片在线观看| 亚洲国产91视频| 密臀av一区二区三区| 97在线精品国自产拍中文| 17c精品麻豆一区二区免费| 亚洲区小说区图片区qvod按摩| 在线黄色国产电影| 91在线观看免费高清| 欧美人与性动xxxx| 欧美a一区二区| 精品176极品一区| 欧美日韩中文不卡| 国产精品久久网| 欧美日韩国产精选| 精品一区二区免费| 精品国产亚洲日本| 毛片在线网址播放| 欧美精品亚洲精品| 亚洲天堂av女优| 中文字幕在线不卡视频| 91精品国产91久久综合| 大片免费在线观看| 欧美亚洲黄色片| 7777精品久久久久久| 欧美影院一区二区三区| 精品在线亚洲视频| 极品束缚调教一区二区网站| 人成在线免费视频| 超碰免费在线公开| 欧美激情一区二区三区在线视频观看| 亚洲精品成人在线| 久久久天天操| 精品国产伦一区二区三区观看说明 | porn亚洲| 黄色三级中文字幕| 国产激情综合五月久久| 日韩一区二区三区在线视频| 9l国产精品久久久久麻豆| 精品日韩免费| 欧美韩日亚洲| 97涩在线观看视频| 亚洲韩国在线| 国产ts人妖一区二区三区| 日韩精品最新网址| 亚洲欧洲www| 天堂精品中文字幕在线| 日韩mv欧美mv国产网站| a视频在线免费看| 国产xxxxx| 特级西西444|