經過一年的發展
根據
在全球訪問量最大的百萬個網站中,nginx 的份額為 25.54%(一年前為 26.22%,兩年前為 23.76%)。 目前,大約有 459 億個網站正在運行 Nginx(一年前為 397 億個)。 經過
1.17.x 上游分支開發過程中添加的最顯著的改進:
- 新增指令
limit_req_dry_run ,啟動試運行模式,其中對請求處理的強度不施加任何限制(無速率限制),但繼續考慮超出共享記憶體限制的請求數量; - 新增指令
limit_conn_dry_run ,將 ngx_http_limit_conn_module 模組切換到測試運行模式,其中連接數不受限制,但會被考慮; - 新增指令“
授權延遲 ”,它允許您為回應代碼為 401 的未授權請求添加延遲,以降低密碼猜測的強度並防止攻擊 ,在存取受限的系統時操縱操作執行時間的測量(定時攻擊)密碼 ,子查詢的結果 或智威湯遜 (JSON 網路令牌); - 新增了對「limit_rate」和「limit_rate_after」指令以及流模組的「proxy_upload_rate」和「proxy_download_rate」指令中變數的支援;
- 在指令中
grpc_pass 新增了在定義位址的參數中使用變數的支援。 如果位址被指定為域名,則在所描述的伺服器群組中搜尋該名稱,如果未找到,則使用解析器確定; - 新增了新變數
$proxy_protocol_server_addr и$proxy_protocol_server_port ,其中包含從PROXY協定頭取得的伺服器位址和連接埠; - 在模組中
ngx_stream_limit_conn_模塊 新增變數$limit_conn_status ,儲存限制連線數的結果:PASSED、REJECTED 或 REJECTED_DRY_RUN; - 在模組中
ngx_http_limit_req_module 新增變數$limit_req_status ,儲存限制請求到達速率的結果:PASSED、DELAYED、REJECTED、DELAYED_DRY_RUN 或 REJECTED_DRY_RUN; - 預設情況下,模組已組裝
ngx_http_postpone_filter_module ; - 新增了使用內建 Perl 解譯器提供的 $r->internal_redirect() 方法切換命名「location」區塊的支援。 該方法現在涉及處理帶有轉義字元的 URI;
- 在“upstream”設定區塊中使用“upstream”指令時
哈希 » 為了透過客戶端-伺服器綁定組織負載平衡,如果指定空鍵值,則現在啟動統一平衡模式(循環); - 新增了對呼叫 ioctl(FIONREAD) 的支援(如果可用)以避免隨著時間的推移從快速連接中讀取。
來源: opennet.ru