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

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

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

利用NGINX幫助您為突發(fā)的流量高峰做好準(zhǔn)備的方法

工程師鄧生 ? 來(lái)源:NGINX開源社區(qū) ? 作者:F.Frances ? 2022-09-14 14:53 ? 次閱讀

在新冠疫情的沖擊下,許多零售商的客戶都改變了他們假日購(gòu)物的渠道和方式。

由于人們無(wú)法去實(shí)體店購(gòu)物,線上購(gòu)物迎來(lái)了前所未有的新高潮——2020 年美國(guó)的電子商務(wù)銷售額飆升至 1,890 億美元,比 2019 年增長(zhǎng)了 33%。

我們?cè)诖颂峁┝藥追N利用 NGINX 幫助您為突發(fā)的流量高峰做好準(zhǔn)備的方法。

第 1 步:知己知彼

在調(diào)整堆棧之前,最好先了解您需要在多大程度上優(yōu)化您的網(wǎng)站性能,才能在購(gòu)物狂歡季有最佳(而不是勉強(qiáng)合格)的表現(xiàn)。

先從收集競(jìng)爭(zhēng)對(duì)手網(wǎng)站的性能數(shù)據(jù)開始吧。頁(yè)面加載時(shí)間可能是最重要的指標(biāo),因?yàn)槿缃裨S多用戶都沒(méi)有耐心,只要網(wǎng)頁(yè)加載時(shí)間超過(guò)三秒,他們就會(huì)離開。測(cè)量加載時(shí)間的工具有很多,并且大多都是免費(fèi)的。

您可考慮測(cè)量以下頁(yè)面的加載時(shí)間:

主頁(yè)

產(chǎn)品搜索結(jié)果

產(chǎn)品詳情頁(yè)面

點(diǎn)擊“購(gòu)買”按鈕后出現(xiàn)的確認(rèn)頁(yè)面

測(cè)試幾個(gè)競(jìng)爭(zhēng)對(duì)手和您自己的網(wǎng)站的關(guān)鍵頁(yè)面只需幾個(gè)小時(shí)。(在測(cè)量下載時(shí)間之前,請(qǐng)務(wù)必使用 Shift+Refresh 清除瀏覽器緩存。)有測(cè)量結(jié)果的加持,您接下來(lái)需要做的是:

制定總體性能指標(biāo)

對(duì)不同的網(wǎng)站來(lái)說(shuō),從頭到尾的整個(gè)流程(訪問(wèn)、搜索及購(gòu)買)共需要多長(zhǎng)時(shí)間?

確定優(yōu)劣勢(shì)

找出您的網(wǎng)站有優(yōu)勢(shì)、有競(jìng)爭(zhēng)力或拖后腿的地方。

注意功能差異

競(jìng)爭(zhēng)對(duì)手如何通過(guò)額外的功能提升購(gòu)物體驗(yàn)?您的網(wǎng)站提供了哪些功能來(lái)打造獨(dú)特的用戶體驗(yàn)?

制定計(jì)劃

如果您的網(wǎng)站在一個(gè)或多個(gè)方面遠(yuǎn)遠(yuǎn)落后于競(jìng)爭(zhēng)對(duì)手,那么您需要努力達(dá)到他們的平均響應(yīng)時(shí)間;如果您已擁有很強(qiáng)的競(jìng)爭(zhēng)力,則努力成為第一名吧。

第 2 步:使用 NGINX

就像那些全球最繁忙的網(wǎng)站一樣

2021年的早些時(shí)候,NGINX 在互聯(lián)網(wǎng) Web 服務(wù)器排名中榮登第一寶座。我們很榮幸有這么多網(wǎng)站信任我們,使用我們的產(chǎn)品交付網(wǎng)站和應(yīng)用,同時(shí)我們也非常歡迎您的加入。

然而,NGINX 不僅僅是一個(gè) Web 服務(wù)器,它還是一個(gè)一體化的軟件反向代理、負(fù)載均衡器、高速緩存和 API 網(wǎng)關(guān)。

NGINX 最重要的優(yōu)勢(shì)之一是它可以大大優(yōu)化進(jìn)入您網(wǎng)站的流量。您可以將 NGINX 看作是在商店門前管理人流的看門人。

它能夠?qū)?gòu)物者的操作(HTTP 請(qǐng)求)進(jìn)行排隊(duì)和授權(quán),就像把人行道上混亂的人群變成商店內(nèi)順暢有序的結(jié)賬隊(duì)列。它能夠?qū)①?gòu)物者引導(dǎo)至購(gòu)物清單上商品的特定位置,確保流量均勻分布,且所有資源都得到均勻使用。

NGINX 主要使用兩種開箱即用的技術(shù)來(lái)實(shí)現(xiàn)這一點(diǎn):

通過(guò)使用 keepalive 連接進(jìn)行 HTTP 卸載,目的是緩沖緩慢到達(dá)的 HTTP 請(qǐng)求,并等到它們準(zhǔn)備就緒后再將其轉(zhuǎn)發(fā)到后端服務(wù)器。

相比遠(yuǎn)端客戶端,從 NGINX(位于快速的本地網(wǎng)絡(luò))發(fā)起的事務(wù)的完成速度要快得多。

具有多種算法的成熟的負(fù)載均衡,目的是優(yōu)化流量分布,并盡可能高效地使用服務(wù)器資源。

除了優(yōu)化流量外,NGINX 還提供了以下四種方式幫助您優(yōu)化網(wǎng)站,并防止流量激增期間出現(xiàn)服務(wù)器過(guò)載問(wèn)題

通過(guò)高速緩存縮短網(wǎng)頁(yè)響應(yīng)時(shí)間

通過(guò)流量控制管理訪客流量

通過(guò)按需彈性擴(kuò)展增加彈性

通過(guò)內(nèi)置安全防護(hù)保護(hù)客戶數(shù)據(jù)

b5ce944a-3041-11ed-ba43-dac502259ad0.png

1 通過(guò)高速緩存縮短網(wǎng)頁(yè)響應(yīng)時(shí)間

很多功能都會(huì)增加在線交易的成功幾率,比如點(diǎn)擊收藏、線上下單并線下取貨,甚至客戶支付選項(xiàng)等。NGINX 的內(nèi)容緩存功能與 Web 流量有著類似的效果。NGINX 會(huì)自動(dòng)存儲(chǔ)它發(fā)送給客戶端的每個(gè)文件,并直接利用緩存來(lái)處理給定文件的后續(xù)請(qǐng)求。

高速緩存不僅可以加快對(duì)用戶的響應(yīng)速度,而且還可以減少上游服務(wù)器上的負(fù)載,因?yàn)閷?duì)于相同的請(qǐng)求,它們不必總是從頭開始反復(fù)進(jìn)行處理。內(nèi)容緩存可以將內(nèi)部流量減少 100 倍,從而減少服務(wù)應(yīng)用所需硬件的處理能力(具體取決于應(yīng)用)。

2 使用連接、速率和帶寬控制管理訪客流量

在最繁忙的時(shí)段,出于安全原因(避免過(guò)度擁擠)或?yàn)榱吮WC重要客戶獲得優(yōu)待(VIP 時(shí)間、受邀參加的促銷活動(dòng)等等),商店看門人可能需要限制進(jìn)店購(gòu)物的人數(shù)。Web 應(yīng)用也需要采取類似的措施。

您可以通過(guò)限制進(jìn)入網(wǎng)站的流量來(lái)防止服務(wù)器過(guò)載,并確保客戶端及時(shí)訪問(wèn)所需的資源。NGINX(在容器環(huán)境中為 NGINX Ingress Controller)提供了一系列限制入向流量的方法,包括:

并發(fā)限制 —— 限制轉(zhuǎn)發(fā)到每個(gè)服務(wù)器的并發(fā)請(qǐng)求數(shù),以匹配每個(gè)服務(wù)器中有限的工作線程或進(jìn)程數(shù)

請(qǐng)求速率限制 —— 對(duì)每個(gè)來(lái)自客戶端的請(qǐng)求按秒或按分加以限制,以防因支付網(wǎng)關(guān)或復(fù)雜搜索等服務(wù)而出現(xiàn)的服務(wù)器過(guò)載

帶寬限制 —— 控制客戶端可以在每個(gè)連接中可以下載的數(shù)據(jù)量

如有必要,您可以區(qū)分不同類型的客戶端。您商店的配送區(qū)可能不會(huì)延伸至地球的另一端,或者您希望優(yōu)先考慮購(gòu)物車中有商品的用戶,您可以利用 cookie、地理位置數(shù)據(jù)及其他參數(shù)來(lái)控制 NGINX 應(yīng)用流量限制的方式。

3 通過(guò)彈性擴(kuò)展避免服務(wù)器過(guò)載

如果您沒(méi)有部署適當(dāng)?shù)幕A(chǔ)架構(gòu),那么流量激增很容易導(dǎo)致服務(wù)器過(guò)載。NGINX 的輕量級(jí)事件驅(qū)動(dòng)型架構(gòu)可最大限度提高當(dāng)前基礎(chǔ)架構(gòu)的應(yīng)用交付性能。

DevOps 團(tuán)隊(duì)還可以利用以下 NGINX 功能來(lái)有效應(yīng)對(duì)流量高峰:

在云環(huán)境中部署 NGINX 和應(yīng)用。NGINX 支持在亞馬遜科技(AWS)、谷歌云平臺(tái)和 Microsoft Azure 等主要云環(huán)境中使用。

每個(gè)云服務(wù)提供商都支持自動(dòng)擴(kuò)展以調(diào)整應(yīng)用實(shí)例的數(shù)量,從而響應(yīng)變化的需求。

在 Kubernetes 環(huán)境中部署容器。NGINX Ingress Controller和 NGINX Service Mesh 提供了多種功能,可增強(qiáng) Kubernetes 應(yīng)用的彈性。

您可以根據(jù)用戶需求水平擴(kuò)展應(yīng)用 pod,并且?guī)缀醪粫?huì)增加實(shí)時(shí)用戶的延遲。

4 通過(guò)內(nèi)置的安全防護(hù)保護(hù)客戶數(shù)據(jù)

對(duì)于任何網(wǎng)站,特別是對(duì)于處理信用卡信息的在線零售商來(lái)說(shuō),確保交易安全必不可少。網(wǎng)絡(luò)攻擊可能會(huì)讓品牌聲譽(yù)受損和吃官司,對(duì)此零售商 Target 深有體會(huì)。Target 通過(guò)增強(qiáng)可視化和安全性解決了 2014 年的數(shù)據(jù)泄露問(wèn)題。

為打造市場(chǎng)上最安全的購(gòu)物體驗(yàn)之一,從而在競(jìng)爭(zhēng)中脫穎而出,您可實(shí)施:

可視化策略,幫助您盡早發(fā)現(xiàn)漏洞

在負(fù)載均衡器和 Ingress Controller上集中進(jìn)行身份驗(yàn)證和授權(quán)管理,助您實(shí)現(xiàn)穩(wěn)健、易于配置的單點(diǎn)登錄 (SSO) 功能

強(qiáng)大的輕量級(jí) WAF 可防范 OWASP 十大安全漏洞和 PCI DDS 漏洞等。

服務(wù)網(wǎng)格可確保所有通信均經(jīng)過(guò) mTLS 加密,從而有效阻止黑客竊取網(wǎng)絡(luò)上的敏感數(shù)據(jù)。




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 高速緩存
    +關(guān)注

    關(guān)注

    0

    文章

    30

    瀏覽量

    11034
  • DDS
    DDS
    +關(guān)注

    關(guān)注

    21

    文章

    625

    瀏覽量

    152290
  • 負(fù)載均衡器
    +關(guān)注

    關(guān)注

    0

    文章

    18

    瀏覽量

    2568

原文標(biāo)題:如何應(yīng)對(duì)突發(fā)的流量激增和服務(wù)器過(guò)載問(wèn)題

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    nginx重啟命令linux步驟是什么?

      1、驗(yàn)證nginx配置文件是否正確   方法一:進(jìn)入nginx安裝目錄sbin下,輸入命令./nginx -t   看到如下顯示nginx
    發(fā)表于 07-11 17:13

    nginx重啟命令linux步驟是什么?

      1、驗(yàn)證nginx配置文件是否正確   方法一:進(jìn)入nginx安裝目錄sbin下,輸入命令./nginx -t   看到如下顯示nginx
    發(fā)表于 07-10 16:40

    鴻蒙OpenHarmony【 配置遠(yuǎn)程訪問(wèn)環(huán)境】

    在搭建了Windows和Ubuntu開發(fā)環(huán)境后,需要通過(guò)下述設(shè)置,使得Windows可以遠(yuǎn)程訪問(wèn)Ubuntu,后續(xù)燒錄文件的傳輸做好準(zhǔn)備
    的頭像 發(fā)表于 04-19 20:08 ?311次閱讀
    鴻蒙OpenHarmony【 配置遠(yuǎn)程訪問(wèn)環(huán)境】

    雷軍官宣小米汽車發(fā)布日3月28日 小米汽車回應(yīng)價(jià)格戰(zhàn):已做好準(zhǔn)備

    雷軍官宣小米汽車發(fā)布日 小米汽車回應(yīng)價(jià)格戰(zhàn):已做好準(zhǔn)備 小米汽車什么時(shí)候發(fā)布一直被猜測(cè),現(xiàn)在終于揭曉謎底了,雷軍官宣小米汽車發(fā)布日就在3月28日。 3月12日早上九點(diǎn),雷軍發(fā)布微博稱,“3月28日
    的頭像 發(fā)表于 03-12 16:38 ?616次閱讀

    雷軍官宣小米汽車發(fā)布日 價(jià)格戰(zhàn)已做好準(zhǔn)備!

    雷軍官宣小米汽車發(fā)布日,3月28日小米SU7正式見(jiàn)面。小米汽車回應(yīng)價(jià)格戰(zhàn):已做好準(zhǔn)備
    的頭像 發(fā)表于 03-12 14:40 ?1114次閱讀

    梯云物聯(lián):革新未來(lái)電梯物聯(lián)網(wǎng)行業(yè),您做好準(zhǔn)備了嗎?

    解析電梯物聯(lián)網(wǎng)技術(shù):革新未來(lái)電梯行業(yè),您已做好準(zhǔn)備了嗎?|梯云物聯(lián)網(wǎng) 據(jù)政府有關(guān)部門統(tǒng)計(jì),截止2014年底,全國(guó)在用電梯的數(shù)量已經(jīng)達(dá)到360萬(wàn)臺(tái)。電梯是一種特殊的垂直交通工具,這么多的電梯每天要運(yùn)送數(shù)千萬(wàn)的乘客上上下下,電梯的安全運(yùn)行,可靠運(yùn)行已經(jīng)成為社會(huì)關(guān)心的一大話題。
    的頭像 發(fā)表于 02-28 10:03 ?280次閱讀
    梯云物聯(lián):革新未來(lái)電梯物聯(lián)網(wǎng)行業(yè),您<b class='flag-5'>做好準(zhǔn)備</b>了嗎?

    AI ready是什么?文明的發(fā)展需要做好準(zhǔn)備

    接入”那么簡(jiǎn)單,還需要做好“AI ready”。 AI ready及其重要性 AI ready這個(gè)概念最早是由飛書提出的,在去年11月末的飛書7發(fā)布會(huì)上,飛書CEO謝欣提到:“在AI充滿想象力的能力面前,企業(yè)需要先做到‘AI Ready’?!?這是因?yàn)锳I大模型雖然有常
    的頭像 發(fā)表于 01-17 10:19 ?485次閱讀
    AI ready是什么?文明的發(fā)展需要<b class='flag-5'>做好準(zhǔn)備</b>

    C++簡(jiǎn)史:C++是如何開始的

    MISRA C++:2023,MISRA? C++ 標(biāo)準(zhǔn)的下一個(gè)版本,來(lái)了!為了幫助您做好準(zhǔn)備,我們介紹了 Perforce 首席技術(shù)支持工程師 Frank van den Beuken 博士撰寫
    的頭像 發(fā)表于 01-11 09:00 ?427次閱讀
    C++簡(jiǎn)史:C++是如何開始的

    通過(guò) Minitab 雙十一的物流成功做好準(zhǔn)備

    今年的雙十一已過(guò)!現(xiàn)在,正是供應(yīng)鏈領(lǐng)軍者檢查供應(yīng)鏈中各個(gè)職能的時(shí)候,以下是?Minitab?幫助供應(yīng)鏈經(jīng)理物流做好準(zhǔn)備: 預(yù)測(cè)模型: Minitab 提供了一系列預(yù)測(cè)模型,包括移動(dòng)平均線、指數(shù)平滑
    的頭像 發(fā)表于 11-20 10:17 ?300次閱讀

    會(huì)展電子票務(wù)系統(tǒng)怎么幫助展會(huì)做好預(yù)約進(jìn)場(chǎng)體驗(yàn)

      會(huì)展票務(wù)系統(tǒng)是當(dāng)今展會(huì)的重要組成部分,它可以幫助展會(huì)做好預(yù)約進(jìn)場(chǎng)體驗(yàn)。隨著數(shù)字化時(shí)代的到來(lái),傳統(tǒng)的人工票務(wù)已經(jīng)不能滿足展會(huì)參與者的需求。通過(guò)引入會(huì)展電子票務(wù)系統(tǒng),展會(huì)能夠提供更加便捷、高效的預(yù)約
    發(fā)表于 11-14 17:09

    Nginx 如何實(shí)現(xiàn)高性能低消耗

    Nginx 是一個(gè)輕量級(jí)的HTTP 服務(wù)程序,相比其他服務(wù)器程序如Apache,Nginx占用內(nèi)存少,穩(wěn)定性高,并發(fā)處理能力強(qiáng)。同時(shí)Nginx 還是一個(gè)反向代理服務(wù)程序,和郵件代理服務(wù)程序
    的頭像 發(fā)表于 11-11 11:31 ?495次閱讀
    <b class='flag-5'>Nginx</b> 如何實(shí)現(xiàn)高性能低消耗

    Nginx目錄結(jié)構(gòu)有哪些

    什么是Nginx? Nginx是一個(gè) 輕量級(jí)/高性能的反向代理Web服務(wù)器,他實(shí)現(xiàn)非常高效的反向代理、負(fù)載平衡,他可以處理2-3萬(wàn)并發(fā)連接數(shù),官方監(jiān)測(cè)能支持5萬(wàn)并發(fā),現(xiàn)在中國(guó)使用nginx網(wǎng)站用戶有
    的頭像 發(fā)表于 11-11 11:27 ?534次閱讀
    <b class='flag-5'>Nginx</b>目錄結(jié)構(gòu)有哪些

    Nginx常用配置與命令

    對(duì)于前端來(lái)說(shuō) Node.js 并不陌生, Nginx 和 Node.js 的很多理念類似, HTTP 服務(wù)器、事件驅(qū)動(dòng)、異步非阻塞等,且 Nginx 的大部分功能使用 Node.js 也可以實(shí)現(xiàn),但 Nginx 和 Node.j
    發(fā)表于 10-18 10:04 ?319次閱讀
    <b class='flag-5'>Nginx</b>常用配置與命令

    不用Nginx,只用Tomcat的Http請(qǐng)求流程

    只用Tomcat,不用Nginx搭建Web服務(wù),行不行?我曾經(jīng)提出的愚蠢問(wèn)題,今天詳細(xì)給自己解釋下,為什么必須用Nginx
    的頭像 發(fā)表于 10-17 10:54 ?563次閱讀

    2024 年最重要的10個(gè)人工智能趨勢(shì),每個(gè)人都必須做好準(zhǔn)備

    年最重要的10個(gè)人工智能趨勢(shì),每個(gè)人都必須它們做好準(zhǔn)備。希望到2024年,我們能在解決圍繞這項(xiàng)技術(shù)的一些棘手問(wèn)題上取得進(jìn)展。雖然近年來(lái),由于成本和易用性而導(dǎo)致的
    的頭像 發(fā)表于 10-10 10:08 ?1640次閱讀
    2024 年最重要的10個(gè)人工智能趨勢(shì),每個(gè)人都必須<b class='flag-5'>做好準(zhǔn)備</b>