一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

為什么要優(yōu)化Nginx HTTPS延遲

jf_ro2CN3Fa ? 來(lái)源:芋道源碼 ? 作者:芋道源碼 ? 2022-11-18 10:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

  • 為什么要優(yōu)化 Nginx HTTPS 延遲
  • TLS 握手和延遲
  • Nginx 中的 TLS 設(shè)置
    • 開(kāi)啟 HTTP/2
    • 如何確認(rèn)你的網(wǎng)站或者 API 開(kāi)啟了 HTTP 2
    • 調(diào)整 Cipher 優(yōu)先級(jí)
    • 啟用 OCSP Stapling
    • 如何檢測(cè) OCSP Stapling 是否已經(jīng)開(kāi)啟?
    • 調(diào)整 ssl_buffer_size
    • 啟用 SSL Session 緩存
  • 卡拉搜索如何減少 30% 的請(qǐng)求延遲
  • 總結(jié)

為什么要優(yōu)化 Nginx HTTPS 延遲

Nginx 常作為最常見(jiàn)的服務(wù)器,常被用作負(fù)載均衡 (Load Balancer)、反向代理 (Reverse Proxy),以及網(wǎng)關(guān) (Gateway) 等等。一個(gè)配置得當(dāng)?shù)?Nginx 服務(wù)器單機(jī)應(yīng)該可以期望承受住 50K 到 80K 左右 [1]每秒的請(qǐng)求,同時(shí)將 CPU 負(fù)載在可控范圍內(nèi)。

但在很多時(shí)候,負(fù)載并不是需要首要優(yōu)化的重點(diǎn)。比如對(duì)于卡拉搜索來(lái)說(shuō),我們希望用戶(hù)在每次擊鍵的時(shí)候,可以體驗(yàn)即時(shí)搜索的感覺(jué),也就是說(shuō),每個(gè)搜索請(qǐng)求必須在 100ms - 200ms 的時(shí)間 內(nèi)端對(duì)端地返回給用戶(hù),才能讓用戶(hù)搜索時(shí)沒(méi)有“卡頓”和“加載”。因此,對(duì)于我們來(lái)說(shuō),優(yōu)化請(qǐng)求延遲才是最重要的優(yōu)化方向。

這篇文章中,我們先介紹 Nginx 中的 TLS 設(shè)置有哪些與請(qǐng)求延遲可能相關(guān),如何調(diào)整才能最大化加速。然后我們用優(yōu)化卡拉搜索 [2] Nginx 服務(wù)器的實(shí)例來(lái)分享如何調(diào)整 Nginx TLS/SSL 設(shè)置,為首次搜索的用戶(hù)提速 30% 左右。我們會(huì)詳細(xì)討論每一步我們做了一些什么優(yōu)化,優(yōu)化的動(dòng)機(jī)和效果。希望可以對(duì)其它遇到類(lèi)似問(wèn)題的同學(xué)提供幫助。

照例,本文的 Nginx 設(shè)置文件放置于 github,歡迎直接使用: 高性能 Nginx HTTPS 調(diào)優(yōu) [3]

基于 Spring Boot + MyBatis Plus + Vue & Element 實(shí)現(xiàn)的后臺(tái)管理系統(tǒng) + 用戶(hù)小程序,支持 RBAC 動(dòng)態(tài)權(quán)限、多租戶(hù)、數(shù)據(jù)權(quán)限、工作流、三方登錄、支付、短信、商城等功能

  • 項(xiàng)目地址:https://gitee.com/zhijiantianya/ruoyi-vue-pro
  • 視頻教程:https://doc.iocoder.cn/video/

TLS 握手和延遲

很多時(shí)候開(kāi)發(fā)者會(huì)認(rèn)為:如果不是絕對(duì)在意性能,那么了解底層和更細(xì)節(jié)的優(yōu)化沒(méi)有必要。這句話(huà)在很多時(shí)候是恰當(dāng)?shù)?,因?yàn)楹芏鄷r(shí)候復(fù)雜的底層邏輯必須包起來(lái),才能讓更高層的應(yīng)用開(kāi)發(fā)復(fù)雜度可控。比如說(shuō),如果你就只需要開(kāi)發(fā)一個(gè) APP 或者網(wǎng)站,可能并沒(méi)有必要關(guān)注匯編細(xì)節(jié),關(guān)注編譯器如何優(yōu)化你的代碼——畢竟在蘋(píng)果或者安卓上很多優(yōu)化在底層就做好了。

那么,了解底層的 TLS 和應(yīng)用層的 Nginx 延遲優(yōu)化有什么關(guān)系呢?

答案是多數(shù)情況下,優(yōu)化網(wǎng)絡(luò)延遲其實(shí)是在嘗試減少用戶(hù)和服務(wù)器之間的數(shù)據(jù)傳輸次數(shù),也就是所謂的 roundtrip。由于物理限制,北京到云南的光速傳播差不多就是要跑 20 來(lái)毫秒,如果你不小心讓數(shù)據(jù)必須多次往返于北京和云南之間,那么必然延遲就上去了。

因此如果你需要優(yōu)化請(qǐng)求延遲,那么了解一點(diǎn)底層網(wǎng)絡(luò)的上下文則會(huì)大有裨益,很多時(shí)候甚至是你是否可以輕松理解一個(gè)優(yōu)化的關(guān)鍵。本文中我們不深入討論太多 TCP 或者 TLS 機(jī)制的細(xì)節(jié),如果有興趣的話(huà)請(qǐng)參考 High Performance Browser Networking [4] 一書(shū),可以免費(fèi)閱讀。

舉個(gè)例子,下圖中展示了如果你的服務(wù)啟用了 HTTPS,在開(kāi)始傳輸任何數(shù)據(jù)之前的數(shù)據(jù)傳輸情況。

017421ea-66e7-11ed-8abf-dac502259ad0.png

在傳輸數(shù)據(jù)前數(shù)據(jù)已經(jīng)跑了好幾個(gè)來(lái)回 roundtrip

可以看到,在你的用戶(hù)拿到他需要的數(shù)據(jù)前,底層的數(shù)據(jù)包就已經(jīng)在用戶(hù)和你的服務(wù)器之間跑了 3 個(gè)來(lái)回。

假設(shè)每次來(lái)回需要 28 毫秒的話(huà),用戶(hù)已經(jīng)等了 224 毫秒之后才開(kāi)始接收數(shù)據(jù)。

同時(shí)這個(gè) 28 毫秒其實(shí)是非常樂(lè)觀的假設(shè),在國(guó)內(nèi)電信、聯(lián)通和移動(dòng)以及各種復(fù)雜的網(wǎng)絡(luò)狀況下,用戶(hù)與服務(wù)器之間的延遲更不可控。另一方面,通常一個(gè)網(wǎng)頁(yè)需要數(shù)十個(gè)請(qǐng)求,這些請(qǐng)求不一定可以全部并行,因此幾十乘以 224 毫秒,頁(yè)面打開(kāi)可能就是數(shù)秒之后了。

所以,原則上如果可能的話(huà),我們需要盡量減少用戶(hù)和服務(wù)器之間的往返程 (roundtrip),在下文的設(shè)置中,對(duì)于每個(gè)設(shè)置我們會(huì)討論為什么這個(gè)設(shè)置有可能幫助減少往返程。

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 實(shí)現(xiàn)的后臺(tái)管理系統(tǒng) + 用戶(hù)小程序,支持 RBAC 動(dòng)態(tài)權(quán)限、多租戶(hù)、數(shù)據(jù)權(quán)限、工作流、三方登錄、支付、短信、商城等功能

  • 項(xiàng)目地址:https://gitee.com/zhijiantianya/yudao-cloud
  • 視頻教程:https://doc.iocoder.cn/video/

Nginx 中的 TLS 設(shè)置

那么在 Nginx 設(shè)置中,怎樣調(diào)整參數(shù)會(huì)減少延遲呢?

開(kāi)啟 HTTP/2

HTTP/2 標(biāo)準(zhǔn)是從 Google 的 SPDY 上進(jìn)行的改進(jìn),比起 HTTP 1.1 提升了不少性能,尤其是需要并行多個(gè)請(qǐng)求的時(shí)候可以顯著減少延遲。在現(xiàn)在的網(wǎng)絡(luò)上,一個(gè)網(wǎng)頁(yè)平均需要請(qǐng)求幾十次,而在 HTTP 1.1 時(shí)代瀏覽器能做的就是多開(kāi)幾個(gè)連接(通常是 6 個(gè))進(jìn)行并行請(qǐng)求,而 HTTP 2 中可以在一個(gè)連接中進(jìn)行并行請(qǐng)求。HTTP 2 原生支持多個(gè)并行請(qǐng)求,因此大大減少了順序執(zhí)行的請(qǐng)求的往返程,可以首要考慮開(kāi)啟。

如果你想自己看一下 HTTP 1.1 和 HTTP 2.0 的速度差異,可以試一下:https://www.httpvshttps.com/。我的網(wǎng)絡(luò)測(cè)試下來(lái) HTTP/2 比 HTTP 1.1 快了 66%。

022c99dc-66e7-11ed-8abf-dac502259ad0.png

HTTP 1.1 與 HTTP 2.0 速度對(duì)比

在 Nginx 中開(kāi)啟 HTTP 2.0 非常簡(jiǎn)單,只需要增加一個(gè) http2 標(biāo)志即可

listen443ssl;

#改為
listen443sslhttp2;

如果你擔(dān)心你的用戶(hù)用的是舊的客戶(hù)端,比如 Python 的 requests,暫時(shí)還不支持 HTTP 2 的話(huà),那么其實(shí)不用擔(dān)心。如果用戶(hù)的客戶(hù)端不支持 HTTP 2,那么連接會(huì)自動(dòng)降級(jí)為 HTTP 1.1,保持了后向兼容。因此,所有使用舊 Client 的用戶(hù),仍然不受影響,而新的客戶(hù)端則可以享受 HTTP/2 的新特性。

如何確認(rèn)你的網(wǎng)站或者 API 開(kāi)啟了 HTTP 2

在 Chrome 中打開(kāi)開(kāi)發(fā)者工具,點(diǎn)開(kāi) Protocol 之后在所有的請(qǐng)求中都可以看到請(qǐng)求用的協(xié)議了。如果 protocol 這列的值是 h2 的話(huà),那么用的就是 HTTP 2 了

0249b6ca-66e7-11ed-8abf-dac502259ad0.png

用 Chrome 確認(rèn) HTTP/2 已經(jīng)打開(kāi)

當(dāng)然另一個(gè)辦法是直接用 curl 如果返回的 status 前有 HTTP/2 的話(huà)自然也就是 HTTP/2 開(kāi)啟了。

?~curl--http2-Ihttps://kalasearch.cn
HTTP/2403
server:Tengine
content-type:application/xml
content-length:264
date:Tue,22Dec202018:38:46GMT
x-oss-request-id:5FE23D363ADDB93430197043
x-oss-cdn-auth:success
x-oss-server-time:0
x-alicdn-da-ups-status:endOs,0,403
via:cache13.l2et2[148,0],cache10.l2ot7[291,0],cache4.us13[360,0]
timing-allow-origin:*
eagleid:2ff6169816086623266688093e

調(diào)整 Cipher 優(yōu)先級(jí)

盡量挑選更新更快的 Cipher,有助于減少延遲 [5]:

#手動(dòng)啟用cipher列表
ssl_prefer_server_cipherson;#preferalistofcipherstopreventoldandslowciphers
ssl_ciphers'EECDH+AESGCMAES256+EECDH:AES256+EDH';

啟用 OCSP Stapling

在國(guó)內(nèi)這可能是對(duì)使用 Let's Encrypt 證書(shū)的服務(wù)或網(wǎng)站影響最大的延遲優(yōu)化了。如果不啟用 OCSP Stapling 的話(huà),在用戶(hù)連接你的服務(wù)器的時(shí)候,有時(shí)候需要去驗(yàn)證證書(shū)。而因?yàn)橐恍┎豢芍脑颍ㄟ@個(gè)就不說(shuō)穿了)Let's Encrypt 的驗(yàn)證服務(wù)器并不是非常通暢 [6],因此可以造成有時(shí)候數(shù)秒甚至十幾秒延遲的問(wèn)題 [7],這個(gè)問(wèn)題在 iOS 設(shè)備上特別嚴(yán)重

解決這個(gè)問(wèn)題的方法有兩個(gè):

  1. 不使用 Let's Encrypt,可以嘗試替換為阿里云提供的免費(fèi) DV 證書(shū)
  2. 開(kāi)啟 OCSP Stapling

開(kāi)啟了 OCSP Stapling 的話(huà),跑到證書(shū)驗(yàn)證這一步可以省略掉。省掉一個(gè) roundtrip,特別是網(wǎng)絡(luò)狀況不可控的 roundtrip,可能可以將你的延遲大大減少。

在 Nginx 中啟用 OCSP Stapling 也非常簡(jiǎn)單,只需要設(shè)置:

ssl_staplingon;
ssl_stapling_verifyon;
ssl_trusted_certificate/path/to/full_chain.pem;

如何檢測(cè) OCSP Stapling 是否已經(jīng)開(kāi)啟?

可以通過(guò)以下命令

openssls_client-connecttest.kalasearch.cn:443-servernamekalasearch.cn-status-tlsextdebugnull2>&1|grep-i"OCSPresponse"

來(lái)測(cè)試。如果結(jié)果為

OCSPresponse:
OCSPResponseData:
OCSPResponseStatus:successful(0x0)
ResponseType:BasicOCSPResponse

則表明已經(jīng)開(kāi)啟。參考 HTTPS 在 iPhone 上慢的問(wèn)題 [8] 一文。

調(diào)整 ssl_buffer_size

ssl_buffer_size 控制在發(fā)送數(shù)據(jù)時(shí)的 buffer 大小,默認(rèn)設(shè)置是 16k。這個(gè)值越小,則延遲越小,而添加的報(bào)頭之類(lèi)會(huì)使 overhead 會(huì)變大,反之則延遲越大,overhead 越小。

因此如果你的服務(wù)是 REST API [9] 或者網(wǎng)站的話(huà),將這個(gè)值調(diào)小可以減小延遲和 TTFB,但如果你的服務(wù)器是用來(lái)傳輸大文件的,那么可以維持 16k。關(guān)于這個(gè)值的討論和更通用的 TLS Record Size 的討論,可以參考:Best value for nginx's ssl*buffer*size option [10]

如果是網(wǎng)站或者 REST API,建議值為 4k,但是這個(gè)值的最佳取值顯然會(huì)因?yàn)閿?shù)據(jù)的不同而不一樣,因此請(qǐng)嘗試 2 - 16k 間不同的值。在 Nginx 中調(diào)整這個(gè)值也非常容易

ssl_buffer_size4k;

啟用 SSL Session 緩存

啟用 SSL Session 緩存可以大大減少 TLS 的反復(fù)驗(yàn)證,減少 TLS 握手的 roundtrip。雖然 session 緩存會(huì)占用一定內(nèi)存,但是用 1M 的內(nèi)存就可以緩存 4000 個(gè)連接,可以說(shuō)是非常非常劃算的。同時(shí),對(duì)于絕大多數(shù)網(wǎng)站和服務(wù),要達(dá)到 4000 個(gè)同時(shí)連接本身就需要非常非常大的用戶(hù)基數(shù),因此可以放心開(kāi)啟。

這里 ssl_session_cache 設(shè)置為使用 50M 內(nèi)存,以及 4 小時(shí)的連接超時(shí)關(guān)閉時(shí)間 ssl_session_timeout

#EnableSSLcachetospeedupforreturnvisitors
ssl_session_cacheshared50m;#speedupfirsttime.1m~=4000connections
ssl_session_timeout4h;

卡拉搜索如何減少 30% 的請(qǐng)求延遲

卡拉搜索是國(guó)內(nèi)的 Algolia [11],致力于幫助開(kāi)發(fā)者快速搭建即時(shí)搜索功能(instant search),做國(guó)內(nèi)最快最易用的搜索即服務(wù)。

開(kāi)發(fā)者接入后,所有搜索請(qǐng)求通過(guò)卡拉 API 即可直接返回給終端用戶(hù)。為了讓用戶(hù)有即時(shí)搜索的體驗(yàn),我們需要在用戶(hù)每次擊鍵后極短的時(shí)間內(nèi)(通常是 100ms 到 200ms)將結(jié)果返回給用戶(hù)。因此每次搜索需要可以達(dá)到 50 毫秒以?xún)?nèi)的引擎處理時(shí)間和 200 毫秒以?xún)?nèi)的端對(duì)端時(shí)間。

我們用豆瓣電影的數(shù)據(jù)做了一個(gè)電影搜索的 Demo,如果感興趣的話(huà)歡迎體驗(yàn)一下即時(shí)搜索,嘗試一下搜索“無(wú)間道”或者“大話(huà)西游”體驗(yàn)一下速度和相關(guān)度:https://movies-demo.kalasearch.cn/

對(duì)于每個(gè)請(qǐng)求只有 100 到 200 毫秒的延遲預(yù)算,我們必須把每一步的延遲都考慮在內(nèi)。

簡(jiǎn)化一下,每個(gè)搜索請(qǐng)求需要經(jīng)歷的延遲有

02780c46-66e7-11ed-8abf-dac502259ad0.png

卡拉搜索的端對(duì)端延遲圖示

總延遲 = 用戶(hù)請(qǐng)求到達(dá)服務(wù)器(T1) + 反代處理(Nginx T2) + 數(shù)據(jù)中心延遲(T3) + 服務(wù)器處理 (卡拉引擎 T4) + 用戶(hù)請(qǐng)求返回(T3+T1)

在上述延遲中,T1 只與用戶(hù)與服務(wù)器的物理距離相關(guān),而 T3 非常?。▍⒖?strong style="color:#0e88eb;">Jeff Dean Number [12])可以忽略不計(jì)。

所以我們能控制的大致只有 T2 和 T4,即 Nginx 服務(wù)器的處理時(shí)間和卡拉的引擎處理時(shí)間。

Nginx 在這里作為反向代理,處理一些安全、流量控制和 TLS 的邏輯,而卡拉的引擎則是一個(gè)在 Lucene 基礎(chǔ)上的倒排引擎。

我們首先考慮的第一個(gè)可能性是:延遲是不是來(lái)自卡拉引擎呢?

在下圖展示的 Grafana 儀表盤(pán) [13]中,我們看到除了幾個(gè)時(shí)不時(shí)的慢查詢(xún),搜索的 95% 服務(wù)器處理延遲小于 20 毫秒。對(duì)比同樣的數(shù)據(jù)集上 benchmark 的 Elastic Search 引擎的 P95 搜索延遲則在 200 毫秒左右,所以排除了引擎速度慢的可能。

02864022-66e7-11ed-8abf-dac502259ad0.png

Search Grafana

而在阿里云監(jiān)控中,我們?cè)O(shè)置了從全國(guó)各地向卡拉服務(wù)器發(fā)送搜索請(qǐng)求。我們終于發(fā)現(xiàn) SSL 處理時(shí)間時(shí)常會(huì)超過(guò) 300 毫秒,也就是說(shuō)在 T2 這一步,光處理 TLS 握手之類(lèi)的事情,Nginx 已經(jīng)用掉了我們所有的請(qǐng)求時(shí)間預(yù)算。

同時(shí)檢查之后我們發(fā)現(xiàn),在蘋(píng)果設(shè)備上搜索速度格外慢,特別是第一次訪(fǎng)問(wèn)的設(shè)備。因此我們大致判斷應(yīng)該是因?yàn)槲覀兪褂玫?Let's Encrypt 證書(shū)的問(wèn)題。

我們按照上文中的步驟對(duì) Nginx 設(shè)置進(jìn)行了調(diào)整,并將步驟總結(jié)出來(lái)寫(xiě)了這篇文章。在調(diào)整了 Nginx TLS 的設(shè)置后,SSL 時(shí)間從平均的 140ms 降低到了 110ms 左右(全國(guó)所有省份聯(lián)通和移動(dòng)測(cè)試點(diǎn)),同時(shí)蘋(píng)果設(shè)備上首次訪(fǎng)問(wèn)慢的問(wèn)題也消失了。

029256f0-66e7-11ed-8abf-dac502259ad0.png

調(diào)整后延遲

在調(diào)整過(guò)后,全國(guó)范圍內(nèi)測(cè)試的搜索延遲降低到了 150 毫秒左右。

總結(jié)

調(diào)整 Nginx 中的 TLS 設(shè)置對(duì)于使用 HTTPS 的服務(wù)和網(wǎng)站延遲有非常大的影響。本文中總結(jié)了 Nginx 中與 TLS 相關(guān)的設(shè)置,詳細(xì)討論各個(gè)設(shè)置可能對(duì)延遲的影響,并給出了調(diào)整建議。之后我們會(huì)繼續(xù)討論 HTTP/2 對(duì)比 HTTP 1.x 有哪些具體改進(jìn),以及在 REST API 使用 HTTP/2 有哪些優(yōu)缺點(diǎn),請(qǐng)繼續(xù)關(guān)注。

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11077

    瀏覽量

    217031
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    13

    文章

    9793

    瀏覽量

    87950
  • nginx
    +關(guān)注

    關(guān)注

    0

    文章

    171

    瀏覽量

    12595

原文標(biāo)題:優(yōu)化 Nginx HTTPS 延遲 - 如何讓Nginx提速 30%的?

文章出處:【微信號(hào):芋道源碼,微信公眾號(hào):芋道源碼】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Nginx和Apache的差異

    Nginx是一個(gè) 輕量級(jí)/高性能 的反向代理Web服務(wù)器,用于 HTTP、HTTPS、SMTP、POP3 和IMAP 協(xié)議。
    的頭像 發(fā)表于 07-09 09:45 ?110次閱讀

    Nginx配置終極指南

    Nginx 是開(kāi)源、高性能、高可靠的 Web 和反向代理服務(wù)器,而且支持熱部署,幾乎可以做到 7 * 24 小時(shí)不間斷運(yùn)行,即使運(yùn)行幾個(gè)月也不需要重新啟動(dòng),還能在不間斷服務(wù)的情況下對(duì)軟件版本進(jìn)行熱
    的頭像 發(fā)表于 06-18 15:56 ?329次閱讀
    <b class='flag-5'>Nginx</b>配置終極指南

    Nginx性能優(yōu)化終極指南

    而worker 進(jìn)程數(shù)默認(rèn)為 1 。單進(jìn)程最大連接數(shù)為1024。如下圖(打開(kāi)Nginx目錄下的/conf/nginx.conf 文檔),現(xiàn)在我們來(lái)對(duì)這兩個(gè)數(shù)值進(jìn)行調(diào)優(yōu)
    的頭像 發(fā)表于 06-16 13:44 ?252次閱讀
    <b class='flag-5'>Nginx</b>性能<b class='flag-5'>優(yōu)化</b>終極指南

    Nginx核心功能深度解析

    Nginx核心功能深度解析
    的頭像 發(fā)表于 05-09 10:50 ?281次閱讀

    Nginx緩存配置詳解

    Nginx 是一個(gè)功能強(qiáng)大的 Web 服務(wù)器和反向代理服務(wù)器,它可以用于實(shí)現(xiàn)靜態(tài)內(nèi)容的緩存,緩存可以分為客戶(hù)端緩存和服務(wù)端緩存。
    的頭像 發(fā)表于 05-07 14:03 ?572次閱讀
    <b class='flag-5'>Nginx</b>緩存配置詳解

    Nginx服務(wù)優(yōu)化教程

    隱藏Nginx版本號(hào),避免安全漏洞泄漏:修改配置文件法;修改源碼法
    的頭像 發(fā)表于 03-12 15:57 ?505次閱讀
    <b class='flag-5'>Nginx</b>服務(wù)<b class='flag-5'>優(yōu)化</b>教程

    Nginx常見(jiàn)面試題總結(jié)

    Nginx是一個(gè) 輕量級(jí)/高性能的反向代理Web服務(wù)器,用于 HTTP、HTTPS、SMTP、POP3 和 IMAP 協(xié)議。
    的頭像 發(fā)表于 03-03 09:36 ?496次閱讀
    <b class='flag-5'>Nginx</b>常見(jiàn)面試題總結(jié)

    如何通過(guò)優(yōu)化Nginx配置來(lái)提高網(wǎng)絡(luò)環(huán)境的安全性

    。本文為系統(tǒng)管理員、開(kāi)發(fā)者等提供詳盡的安全加固指南,涵蓋基礎(chǔ)到高級(jí)策略,包括隱藏版本號(hào)信息、限制敏感目錄訪(fǎng)問(wèn)、啟用HTTPS、配置錯(cuò)誤頁(yè)面、應(yīng)用內(nèi)容安全策略(CSP)、設(shè)置正確文件權(quán)限、添加安全HTTP響應(yīng)頭、限制連接數(shù)、配置IP白名單、優(yōu)化
    的頭像 發(fā)表于 02-14 17:49 ?1453次閱讀

    EulerOS+Nginx+MySQL 部署 GLPI 資產(chǎn)管理系統(tǒng)

    安全保障,幫助企業(yè)實(shí)現(xiàn)資源的按需擴(kuò)展,提升業(yè)務(wù)響應(yīng)速度,確保服務(wù)的連續(xù)性和數(shù)據(jù)的安全性。??使用的操作系統(tǒng)鏡像版本如下: ??檢查 Nginx 是否部署成功,如果返回如下信息表示 Nginx 安裝成功: ??接下來(lái)就可以在瀏覽器中訪(fǎng)問(wèn)h
    的頭像 發(fā)表于 01-03 09:28 ?729次閱讀
    EulerOS+<b class='flag-5'>Nginx</b>+MySQL 部署 GLPI 資產(chǎn)管理系統(tǒng)

    nginx+lua+redis實(shí)現(xiàn)灰度發(fā)布

    作者:馬仁喜 前言: 授人以魚(yú)不如授人以漁 .先學(xué)會(huì)用,在學(xué)原理,在學(xué)創(chuàng)造,可能一輩子用不到這種能力,但是不能不具備這種能力。這篇文章主要是沉淀使用nginx+lua+redis實(shí)現(xiàn)灰度,當(dāng)我們具備
    的頭像 發(fā)表于 12-17 10:01 ?434次閱讀

    Nginx日常運(yùn)維方法Linux版

    1,安裝? 下載RPM:wget http://nginx.org/packages/centos/7/x86_64/RPMS/nginx
    的頭像 發(fā)表于 12-06 16:38 ?460次閱讀
    <b class='flag-5'>Nginx</b>日常運(yùn)維方法Linux版

    詳解nginx中的正則表達(dá)式

    前言,我這里驗(yàn)證的nginx-v1.23.2單機(jī)環(huán)境下的nginx中的正則表達(dá)式、location路徑匹配規(guī)則和優(yōu)先級(jí)。
    的頭像 發(fā)表于 12-03 09:59 ?856次閱讀
    詳解<b class='flag-5'>nginx</b>中的正則表達(dá)式

    nginx負(fù)載均衡配置介紹

    目錄 nginx負(fù)載均衡 nginx負(fù)載均衡介紹 反向代理與負(fù)載均衡 nginx負(fù)載均衡配置 Keepalived高可用nginx負(fù)載均衡器 修改Web服務(wù)器的默認(rèn)主頁(yè) 開(kāi)啟
    的頭像 發(fā)表于 11-10 13:39 ?753次閱讀
    <b class='flag-5'>nginx</b>負(fù)載均衡配置介紹

    nginx中的正則表達(dá)式和location路徑匹配指南

    前言,我這里驗(yàn)證的nginx-v1.23.2單機(jī)環(huán)境下的nginx中的正則表達(dá)式、location路徑匹配規(guī)則和優(yōu)先級(jí)。
    的頭像 發(fā)表于 09-29 16:02 ?1741次閱讀
    <b class='flag-5'>nginx</b>中的正則表達(dá)式和location路徑匹配指南

    新加坡服務(wù)器延遲大嗎?如何進(jìn)行優(yōu)化

    新加坡服務(wù)器的延遲通常在全國(guó)平均延遲111ms左右,其中移動(dòng)網(wǎng)絡(luò)約為90ms,聯(lián)通網(wǎng)絡(luò)106ms,電信網(wǎng)絡(luò)最低約為85ms。為了進(jìn)行優(yōu)化,一般可以采取使用CDN、優(yōu)化路由線(xiàn)路、增加帶寬
    的頭像 發(fā)表于 08-09 13:58 ?505次閱讀