(二)秒殺基礎工具與限流配置

2021-10-23 05:57:44 字數 1087 閱讀 9983

安裝

$ ab -v檢測介面最大qps(每秒查詢率 - 吞吐量)

//-n 請求次數 -c 併發數

...requests per second: 8.03 [#/sec] (mean) //每秒多少個請求

...限流配置

語法:limit_req_zone key zone=name:size rate=rate;

配置段:http

此指令用於宣告請求限制zone,zone可以儲存各種key的狀態,name是zone的唯一標識,size代表zone的記憶體大小,rate指定速率限制。

語法: limit_req zone=name [burst=number] [nodelay];

配置段:http, server, location

limit_req zone=mylimit burest=1 nodelay

此指令用於設定共享的記憶體zone和最大的突發請求大小。

若請求速率超過了limit_req_zone中指定的rate但小於limit_req 中的burst,則進行延遲處理,若再超過burst,就可以通過設定nodelay對其進行丟棄處理。

limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;

server

}

單客戶分為三種情況

請求速率 < rate(1r/s),正常處理

rate(1r/s) < 請求速率 < burst(5r/s),大於rate部分延遲

burst(5r/s) < 請求速率,大於burst部分丟棄(返回503服務暫時不可用)

08 秒殺 介面優化

1.redis預減庫存減少伺服器訪問 2.記憶體標記減少redis訪問 3.請求先入隊緩衝,非同步下單,增強使用者體驗 4.rabbitmq安裝與springboot整合 5.nginx水平拓展 6.資料庫分庫分表 mycat 1.解決超賣問題 1 資料庫加唯一索引,防止秒殺期間使用者重複購買 2 ...

2 秒殺專案架構分析

架構 構思 認清形勢 使用者 超大量 正常 壞人 地域 全國各地 解釋 因為網路的請求來自各個地方 為了降低網路傳輸的延時 我們都用cdn網路 提前將我們的服務傳送到離使用者最近的那個伺服器上 由此大大減少不同地域網路訪問的差距 也相當於起到了乙個分流的作用 業務流程 前台 商品展示 登記 後台 資...

1,秒殺系統的設計

一 秒殺系統的特點 1,人多商品少,2,時間短流量高。3,外掛程式機器,專業人員 二 技術分析 1,瞬時高併發的處理能力。2,多層次分布式處理能力 3,人機互動與對抗,4,選擇 linux nginx php mysql redis 開源,免費,大眾普及 2 2技術選型分析 cdn,智慧型dns 就...