人妻精品久久久久中文字幕69,激情欧美一区二区三区,日韩在线一区二区,亚洲精品久久久久久下一站

×

Nginx服務器限速功能(二)

  • 作者:新網(wǎng)
  • 來源:新網(wǎng)
  • 瀏覽:100
  • 2018-05-12 14:17:52

定義有兩個部分: zone= keyword標識的區(qū)域名稱和冒號后面的大小。 大約16,000個IP地址的狀態(tài)信息需要1兆字節(jié),所以我們的區(qū)域可以存儲大約160,000個地址。 如果Nginx需要添加一個新條目時,存儲空間將被耗盡,它將刪除最舊的條目。

 定義有兩個部分: zone= keyword標識的區(qū)域名稱和冒號后面的大小。 大約16,000個IP地址的狀態(tài)信息需要1兆字節(jié),所以我們的區(qū)域可以存儲大約160,000個地址。 如果Nginx需要添加一個新條目時,存儲空間將被耗盡,它將刪除最舊的條目。

timg.jpg

<div
如果釋放的空間不足以容納新記錄,則Nginx返回狀態(tài)碼503(Temporarily Unavailable) 。 此外,為了防止內存耗盡,每當Nginx創(chuàng)建一個新條目時,最多可以刪除兩個在前60秒內沒有使用的條目。
 
Rate - 設置最大請求率。 在這個例子中,速率不能超過每秒10個請求。 Nginx實際上以毫秒粒度跟蹤請求,所以這個限制對應于每100毫秒1個請求。 由于我們不允許爆發(fā),這意味著如果請求在前一個允許的時間之后小于100毫秒時被拒絕。
 
limit_req_zone指令為速率限制和共享內存區(qū)域設置參數(shù),但實際上并不限制請求速率。
 
因此,您需要通過在其中包含limit_req指令來將限制應用于特定location或server塊。 在這個例子中,我們是對/login/的URI速率限制請求。
 
因此,現(xiàn)在每個唯一的IP地址被限制,/login/每秒10個請求 - 或者更確切地說,在前一個100毫秒內不能請求該URL。
 
處理并發(fā)
 
如果我們在100毫秒內得到兩個請求會怎么樣? 對于第二個請求,Nginx將狀態(tài)碼503返回給客戶端。 這可能不是我們想要的,因為應用程序本質上是突發(fā)性的。
 
相反,我們想要緩沖任何多余的請求并及時提供服務。 這是我們使用burst參數(shù)limit_req ,在這個更新的配置:
 
burst參數(shù)定義了客戶端可以超過區(qū)域指定的速率(使用我們的示例mylimit區(qū)域,速率限制為每秒10個請求,或每100毫秒1個)可以產(chǎn)生多少個請求。
 
在前一個請求到達100毫秒后的請求被放入一個隊列中,這里我們將隊列大小設置為20。
 
這意味著如果21個請求同時從一個給定的IP地址到達,Nginx立即將第一個請求轉發(fā)到上游服務器組,并將剩下的20個放入隊列中。 然后,它每100毫秒轉發(fā)一個排隊的請求,并且只有當傳入的請求使排隊請求的數(shù)量超過20時才返回503給客戶端。
 
無延遲隊列
 
具有burst的配置會導致流量暢通,但不是很實用,因為它可能會使您的網(wǎng)站顯得很慢。
 

免責聲明:本文內容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權,也不承認相關法律責任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內容,請發(fā)送郵件至:operations@xinnet.com進行舉報,并提供相關證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權內容。

免費咨詢獲取折扣

Loading