二維碼
        企資網(wǎng)

        掃一掃關(guān)注

        當(dāng)前位置: 首頁 » 企資頭條 » 頭條 » 正文

        Nginx服務(wù)器高性能優(yōu)化的配置__輕松實(shí)現(xiàn)

        放大字體  縮小字體 發(fā)布日期:2021-09-18 12:26:49    作者:企資小編    瀏覽次數(shù):49
        導(dǎo)讀

        今天要說的是Nginx服務(wù)器高性能優(yōu)化的配置,如何使Nginx輕松實(shí)現(xiàn)10萬并發(fā)訪問量。通常來說,一個正常的 Nginx Linux 服務(wù)器可以達(dá)到 500,000 – 600,000 次/秒 的請求處理性能,如果Nginx服務(wù)器經(jīng)過優(yōu)化的話,則可以

        今天要說的是Nginx服務(wù)器高性能優(yōu)化的配置,如何使Nginx輕松實(shí)現(xiàn)10萬并發(fā)訪問量。

        通常來說,一個正常的 Nginx Linux 服務(wù)器可以達(dá)到 500,000 – 600,000 次/秒 的請求處理性能,如果Nginx服務(wù)器經(jīng)過優(yōu)化的話,則可以穩(wěn)定地達(dá)到 904,000 次/秒 的處理性能,大大提高Nginx的并發(fā)訪問量。

        這里需要特別說明的是:

        1、本文中所有列出來的配置都是在我的測試環(huán)境驗證的,你需要根據(jù)你服務(wù)器的情況進(jìn)行配置。


        一、優(yōu)化思路

        分析:nginx要成功響應(yīng)請求,會有如下兩個限制:

        1、nginx接受的tcp連接多,能否建立起來?

        2、nginx響應(yīng)過程,要打開許多文件,能否打開?

        所以,只要我們針對上面兩個限制進(jìn)行優(yōu)化,就能大幅提升Nginx的效率。

        二、優(yōu)化步驟

        我們知道Nginx的工作流程如下圖所示:

        一、步驟:

        1. 找到Nginx服務(wù)器瓶頸。

        2. 優(yōu)化配置。

        3. 重新壓力測試

        注意:在配置修改之后務(wù)必要進(jìn)行壓力測試,這樣可以觀測到具體是哪個配置修訂的優(yōu)化效果最明顯。通過這種有效測試方法可以為你節(jié)省大量時間。

        二、找出Nginx的瓶頸

        1. 打開Apache ab壓力測試工具,輸入如下命令:ab -n 200000 -c 5000 localhost:8080/index.html。

        2. 查看Nginx 狀態(tài)信息

        在瀏覽器中輸入nginx的地址:127.0.0.1/status,查看nginx的狀態(tài)信息。

        注意查看connections,waiting等參數(shù)信息。從而確定如何優(yōu)化相關(guān)參數(shù)。

        Nginx 狀態(tài)信息打開的方法,這里就不細(xì)說了,不清楚的可以看我之前的文章,《Nginx總結(jié)(八)啟用Nginx Status及狀態(tài)參數(shù)詳解》

        三、優(yōu)化配置

        根據(jù)上面的方法總結(jié)起來,一般來說nginx 配置文件中對優(yōu)化比較有作用的為以下幾項:

        Nginx優(yōu)化配置項:

        1)優(yōu)化 workprocess,cpu

        worker_processes 8;      // 根據(jù)CPU核數(shù)配置worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000  00100000 01000000 10000000;

        2)事件處理模型優(yōu)化

        nginx的連接處理機(jī)制在于不同的操作系統(tǒng)會采用不同的I/O模型,Linux下,nginx使用epoll的I/O多路復(fù)用模型,在freebsd使用kqueue的IO多路復(fù)用模型,在solaris使用/dev/pool方式的IO多路復(fù)用模型,在windows使用的icop等等。
        要根據(jù)系統(tǒng)類型不同選擇不同的事務(wù)處理模型,我們使用的是Centos,因此將nginx的事件處理模型調(diào)整為epoll模型。

        events {    worker_connections  10240;    //     use epoll;}

        說明:在不指定事件處理模型時,nginx默認(rèn)會自動的選擇最佳的事件處理模型服務(wù)。

        3)設(shè)置work_connections 連接數(shù)

         worker_connections  10240; 

        4)每個進(jìn)程的最大文件打開數(shù)

        worker_rlimit_nofile 65535;  # 一般等于ulimit -n系統(tǒng)值

        5)keepalive timeout會話保持時間

        keepalive_timeout  60;

        6)GZIP壓縮性能優(yōu)化

        gzip on;       #表示開啟壓縮功能gzip_min_length  1k; #表示允許壓縮的頁面最小字節(jié)數(shù),頁面字節(jié)數(shù)從header頭的Content-Length中獲取。默認(rèn)值是0,表示不管頁面多大都進(jìn)行壓縮,建議設(shè)置成大于1K。如果小于1K可能會越壓越大gzip_buffers     4 32k; #壓縮緩存區(qū)大小gzip_http_version 1.1; #壓縮版本gzip_comp_level 6; #壓縮比率, 一般選擇4-6,為了性能gzip_types text/css text/xml application/javascript;  #指定壓縮的類型 gzip_vary on; #vary header支持

        7)proxy超時設(shè)置

        proxy_connect_timeout 90;proxy_send_timeout  90;proxy_read_timeout  4k;proxy_buffers 4 32k;proxy_busy_buffers_size 64k

        8)高效傳輸模式

        sendfile on; # 開啟高效文件傳輸模式。tcp_nopush on; #需要在sendfile開啟模式才有效,防止網(wǎng)路阻塞,積極的減少網(wǎng)絡(luò)報文段的數(shù)量。將響應(yīng)頭和正文的開始部分一起發(fā)送,而不一個接一個的發(fā)送。

        Linux系統(tǒng)內(nèi)核層面:

        Nginx要達(dá)到最好的性能,出了要優(yōu)化Nginx服務(wù)本身之外,還需要在nginx的服務(wù)器上的內(nèi)核參數(shù)。

        這些參數(shù)追加到/etc/sysctl.conf,然后執(zhí)行sysctl -p 生效。

        1)調(diào)節(jié)系統(tǒng)同時發(fā)起的tcp連接數(shù)
        net.core.somaxconn = 262144

        2)允許等待中的監(jiān)聽

        net.core.somaxconn = 4096

        3) tcp連接快速回收

        4) tcp連接重用

        net.ipv4.tcp_tw_recycle = 1

        net.ipv4.tcp_tw_reuse = 1

        5)不抵御洪水攻擊

        net.ipv4.tcp_syncookies = 0

        net.ipv4.tcp_max_orphans = 262144 #該參數(shù)用于設(shè)定系統(tǒng)中最多允許存在多少TCP套接字不被關(guān)聯(lián)到任何一個用戶文件句柄上,主要目的為防止Ddos攻擊

        6)最大文件打開數(shù)

        ulimit -n 30000

        最后

        以上,就把Nginx服務(wù)器高性能優(yōu)化的配置介紹完了,大家可以根據(jù)我提供的方法,每個參數(shù)挨個設(shè)置一遍,看看相關(guān)的效果。這些都是一點(diǎn)點(diǎn)試出來的,這樣才能更好的理解各個參數(shù)的意義。

         
        (文/企資小編)
        打賞
        免責(zé)聲明
        本文為企資小編推薦作品?作者: 企資小編。歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明原文出處:http://m.sneakeraddict.net/news/show-179132.html 。本文僅代表作者個人觀點(diǎn),本站未對其內(nèi)容進(jìn)行核實(shí),請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內(nèi)容,一經(jīng)發(fā)現(xiàn),立即刪除,作者需自行承擔(dān)相應(yīng)責(zé)任。涉及到版權(quán)或其他問題,請及時聯(lián)系我們郵件:weilaitui@qq.com。
         

        Copyright ? 2016 - 2023 - 企資網(wǎng) 48903.COM All Rights Reserved 粵公網(wǎng)安備 44030702000589號

        粵ICP備16078936號

        微信

        關(guān)注
        微信

        微信二維碼

        WAP二維碼

        客服

        聯(lián)系
        客服

        聯(lián)系客服:

        在線QQ: 303377504

        客服電話: 020-82301567

        E_mail郵箱: weilaitui@qq.com

        微信公眾號: weishitui

        客服001 客服002 客服003

        工作時間:

        周一至周五: 09:00 - 18:00

        反饋

        用戶
        反饋

        成年午夜无码av片在线观看 | 日韩人妻无码一区二区三区久久99| 天堂Aⅴ无码一区二区三区| 亚洲av无码不卡| 亚洲精品无码日韩国产不卡?V| 天堂中文字幕在线| 69ZXX少妇内射无码| 亚洲国产人成中文幕一级二级| JLZZJLZZ亚洲乱熟无码| 亚洲va中文字幕无码| 无码精品久久一区二区三区| 直接看的成人无码视频网站| 久久中文字幕无码专区| 中文字幕无码成人免费视频| 国产精品无码一区二区在线观一 | 中文精品人人永久免费| 18禁网站免费无遮挡无码中文| 欧美日韩中文字幕在线看| 国产V亚洲V天堂A无码| 中文字幕视频在线免费观看| 无码人妻久久一区二区三区蜜桃| 亚洲AV无码专区在线播放中文| 一二三四社区在线中文视频| 国产AV无码专区亚洲AV漫画| 无码专区6080yy国产电影| 亚洲AV无码日韩AV无码导航| 天堂中文在线资源| 亚洲AV永久无码精品一区二区| 午夜无码伦费影视在线观看| 最近更新中文字幕在线| 免费无码午夜福利片69| 未满十八18禁止免费无码网站| 日本中文字幕免费看| 最近高清中文字幕无吗免费看| 国产成人无码18禁午夜福利p| 国产AV无码专区亚洲AV手机麻豆| av区无码字幕中文色| 亚洲欧美精品一中文字幕| 国产免费无码AV片在线观看不卡| 人妻AV中出无码内射| 久久久久亚洲精品中文字幕|