Nginx企業級負載均衡:技術詳解系列(9)—— Nginx核心配置詳解(全局配置)

在這里插入圖片描述
你好,我是趙興晨,97年文科程序員。?????

在 Nginx企業級負載均衡:技術詳解系列(8)—— Nginx核心配置詳解(默認配置文件)文章中,咱們討論了Nginx核心配置文件的基礎知識,然而,Nginx的知識點還有很多,總有一些精妙的細節等著咱們去發掘。

今天,咱們來深入發掘一下Nginx的全局配置指令,這些指令對于確保Nginx服務器的高效和穩定運行具有決定性的作用。

為了幫助大家更好地理解和應用,我將這些配置指令分為幾個類別,讓我們一一解析它們的重要性和應用場景。

正常運行的必備配置

1、用戶和組:設置啟動Nginx工作進程的用戶和組

user nginx nginx;

2、工作進程數:根據CPU核心數設置Nginx工作進程的數量,一般設置為和CPU核心數相同 auto即可。

worker_processes [number | auto];

優化性能相關的配置
1、CPU親和性:worker_cpu_affinity 將Nginx工作進程綁定到特定的CPU核心,減少CPU資源分配開銷,提升性能。默認Nginx是不進行多進程綁定的,綁定并不是意味著當前nginx進程獨占一核心CPU,但是可以保證此進程不會運行在其他核心上,這就極大減少了nginx的工作進程在不同的CPU核心上來回跳轉,減少了CPU對進程資源分配與回收以及內存管理等。

以下是示例配置

worker_cpu_affinity 00000001 00000010 00000100 00001000;

用于調試及定位問題相關的配置

1、錯誤日志記錄:error_log 設置錯誤日志的路徑和級別,便于問題排查。?
語法:error_log file [debug | info | notice | warn | error | crit | alert | emerg]

以下是示例配置

#error_log logs/error.log;
#error_log logs/error.log notice;
error_log  /apps/nginx/logs/error.log error;

事件驅動相關的配置

1、進程PID文件:pid 指定nginx主進程PID文件的存放路徑。

以下是示例配置

pid /usr/local/nginx/logs/nginx.pid;

其他重要配置

1、工作進程優先級:worker_priority 設置工作進程優先級,-20~20(19)

worker_priority 0;

2、文件描述符限制:worker_rlimit_nofile 所有worker進程能打開的文件數量上限,包括:Nginx的所有連接(例如與代理服務器的連接數),而不僅僅是客戶端的連接,另一個考慮因素是實際的并發連接數不能超過系統級別的最大打開文件數的限制。最好與 ulimit -n 或者 limits.conf的值保持一致。

worker_rlimit_nofile 65536;

3、前臺運行:daemon off; 用于測試或Docker等環境,使Nginx在前臺運行。

4、工作模式:master_process off|on 控制Nginx的master-worker模式,通常用于開發調試場景,默認為on。

Events模塊配置

1、最大并發連接數: worker_connections 65536; 設置單個工作進程的最大并發連接數。?????

2、事件驅動模型:use epoll; 使用epoll事件驅動,Nginx支持眾多的事件驅動,比如select、poll、epoll,只能設置在events模塊中。????????

3、驚群效應控制:accept_mutes on; on為同一時刻一個請求輪流worker進程處理,而防止被同時喚醒所有worker,避免多個睡眠進程被喚醒的設置,默認為off,心情求會喚醒所有worker進程,此過程稱為“驚群”,因此Nginx剛安裝完以后要進行適當的優化。建議設置為 on。??????

4、多連接接受:multi_accept on; on時Nginx服務器的每個工作進程可以同時接受多個新的網絡連接,此指令默認為off,即默認為一個工作進程只能一次接受一個新的網絡連接,打開后幾個同時接受多個。建議設置為on。

OK,以上就是今天的分享,感謝您的閱讀,期待在下一篇文章中與您再次相遇。保持好奇,繼續探索,讓我們一起在技術的道路上不斷前行!


最后,我為您準備了一份特別的技術學習禮物,包括:
Linux學習筆記:詳盡記錄了Linux的核心知識點和實用技巧。
Java基礎筆記:為您打下堅實的Java編程基礎。
Java面試總結:十萬字的面試經驗,助您輕松應對各種技術面試。

【一鍵領取】
領取這份資料包,您只需輕松一掃:
按住👇🏻圖片,掃描二維碼,備注:【大禮包】?
通過好友驗證后,您的的專屬資料包就會立即發送給您。

Linux系統學習筆記、Java基礎學習筆記、10萬字Java面試總結
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/13699.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/13699.shtml
英文地址,請注明出處:http://en.pswp.cn/web/13699.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Python設計模式11】建造者模式

建造者模式(Builder Pattern)是一種創建型設計模式,它將一個復雜對象的構建過程分離出來,使得同樣的構建過程可以創建不同的表示。建造者模式通過使用多個簡單的對象一步一步構建成一個復雜的對象。 建造者模式的結構 建造者模式…

centos9 stream在線安裝NVIDIA驅動(rockylinux9.4也成功安裝nvidia驅動)

Install NVIDIA Drivers on CentOS Stream 9(rockylinux9.4成功) 主板為技嘉mz72-hb2 顯卡為4090 一.Disable Secure Boot From the BIOS 二.Enabling the EPEL Repository on CentOS Stream 9 1.update the DNF package repository cache sudo dnf …

STM32控制HC-SR04超聲模塊獲取距離

歡迎入群共同學習交流 時間記錄:2024/5/23 一、模塊介紹 (1)引腳介紹 VCC:電源引腳,接單片機3.3/5V GND:電源地 Trig:超聲信號觸發引腳 Echo:超聲信號接收引腳 (2&…

java.util.Arrays 詳解

排序 sort(int[] a): 對指定 int 型數組按數字升序進行排序。sort(Object[] a): 對指定對象數組進行排序&#xff08;對象的類必須實現 Comparable 接口&#xff09;。sort(T[] a, Comparator<? super T> c): 使用指定的比較器對數組進行排序。sort(int[] a, int fromI…

給你一把接口響應斷言神器,你要不要?

JSON Schema是用來標記和校驗JSON數據&#xff0c;類似于XMLSchema,可用在自動化測試驗證JSON數據。 官網&#xff1a;http://json-schema.org/ 最常用版本&#xff1a;draft 04。&#xff08;目前各類編程語言對draft 04支持最廣泛&#xff09; 舉個例子 假如你有一個接口…

202473讀書筆記|《但愿呼我的名為旅人:松尾芭蕉俳句300》——圍爐夜話,身頓心安,愿每個人都能在愛里自由馳騁

202473讀書筆記|《但愿呼我的名為旅人&#xff1a;松尾芭蕉俳句300》——圍爐夜話&#xff0c;身頓心安&#xff0c;愿每個人都能在愛里自由馳騁 &#x1f60d;&#x1f60d;&#x1f929;&#x1f929; 譯者序正文二正文三正文四正文五正文六正文七 《但愿呼我的名為旅人&…

Lua中table.sort()使用方式

table.sort(tab,compare) 參數如下&#xff1a; tab:表名 compare:比較規則函數名 簡略寫法&#xff1a; a {1,2,3} table.sort(a,function(a,b) return a>b end) compare這個參數是一個函數&#xff0c;它有兩個參數&#xff0c;你可以理解為表中的兩個不同元素&…

智能進化:讓AI大模型變得更聰明的路徑探索

前言 隨著人工智能&#xff08;AI&#xff09;技術的飛速發展&#xff0c;大模型在多個領域展現出了前所未有的能力。然而&#xff0c;它們仍然面臨著理解力、泛化能力和適應性等方面的挑戰。如何讓大模型變得更聰明&#xff0c;是當前AI研究和應用的一個重要課題。本文將探討…

解除網頁禁止選擇

控制臺輸入以下命令 復制&#xff1a;javascript:void(document.body.οncοpy) 可選&#xff1a;javascript:void(document.body.onselectstart) 拖拉&#xff1a;javascript:void(document.body.οnmοuseup)

C++實現基于http協議的epoll非阻塞模型的web服務器框架(支持訪問服務器目錄下文件的解析)

使用方法&#xff1a; 編譯 例子&#xff1a;./httpserver 9999 ../ htmltest/ 可執行文件 端口 要訪問的目錄下的 例子&#xff1a;http://192.168.88.130:9999/luffy.html 前提概要 http協議 &#xff1a;應用層協議&#xff0c;用于網絡通信&#xff0c;封裝要傳輸的數據&…

npm install [Error]

npm install 依賴的時候報錯 依賴版本問題的沖突&#xff0c;忽視即可 使用 npm install --legacy-peer-deps

剪畫小程序:3個分離人聲提取小技巧,趕緊收藏起來吧!

Hello&#xff01;大家好呀&#xff01;這里是社會主義搬磚人小畫&#xff01; 人聲分離&#xff0c;是指將混合在一起的人聲和其他聲音&#xff08;如背景音樂、環境噪音等&#xff09;分離開來&#xff0c;提取出單獨的人聲部分的過程。 在實際應用中&#xff0c;人聲分離技…

leetcode654.最大二叉樹、617.合并二叉樹、700.二叉搜索樹中的搜索

654.最大二叉樹 構造樹一般采用的是前序遍歷&#xff0c;因為先構造中間節點&#xff0c;然后遞歸構造左子樹和右子樹 確定遞歸函數的參數和返回值 參數傳入的是存放元素的數組&#xff0c;返回該數組構造的二叉樹的頭結點&#xff0c;返回類型是指向節點的指針。 TreeNode…

Unity 開發Hololens,制作面板跟隨眼鏡一起移動,(面板跟蹤)

Hololens滑動框以及面板跟蹤 創建空物體&#xff0c;并添加組件 SolverHandler、RedialView、FollowMeToggle 創建按鈕&#xff0c;控制停止/開始跟蹤 創建一個Hololens自帶的按鈕放到右上角&#xff0c;并添加事件 創建藍色背景板 創建空物體Backplate&#xff0c;下面再…

個體因果效應估計|EDVAE:用于個體治療效果估計的反事實推理中的解開潛在因素模型

【摘要】根據觀察數據估計個體治療效果&#xff08;ITE&#xff09;是一項至關重要但具有挑戰性的任務。解纏結表示已用于將代理變量分為混雜變量、工具變量和調整變量。然而&#xff0c;根據觀測數據準確地進行反事實推理來識別 ITE 仍然是一個懸而未決的問題。在本文中&#…

AppInventor2要在界面上做一個電量圖標,有什么好的思路嗎?

問&#xff1a;要在界面上做一個電量圖標&#xff0c;有什么好的思路嗎&#xff1f; 答&#xff1a;首先&#xff0c;很容易想到使用進度條相關的組件&#xff0c;原生”滑動條“組件可以嗎&#xff1f; 答案顯而易見&#xff0c;首先它的樣式自定義不夠&#xff0c;UI不外乎上…

STM32_ADC

1、ADC簡介 ADC&#xff0c;即Analog-Digital Converter&#xff0c;模擬-數字轉換器。 ADC可以將引腳上連續變化的模擬電壓轉換為內存中存儲的數字變量&#xff0c;建立模擬電路到數字電路的橋梁。 12位逐次逼近型ADC&#xff0c;1us轉換時間。 輸入電壓范圍&#xff1a;0~3.3…

P6【力扣144,94,145】【數據結構】【二叉樹遍歷】C++版

【144】二叉樹的前序遍歷 1、遞歸法&#xff1a; class Solution { public:void preorder(TreeNode* root, vector<int> &res){if(root nullptr){return;}res.push_back(root->val);preorder(root->left, res);preorder(root->right, res);}vector<in…

沒有密碼如何卸載卡巴斯基?

如果忘記卡巴斯基6.0的保護密碼&#xff0c; &#xff08;1&#xff09;進入安全模式下 &#xff08;2&#xff09;打開6.0的安裝目錄 Kaspersky Anti-Virus 6.0: C://Program Files//Kaspersky Lab//Kaspersky Anti-Virus 6.0 &#xff08;3&#xff09;將目錄中的avp.exe改…

CVE-2020-7982 OpenWrt 遠程命令執行漏洞學習(更新中)

OpenWrt是一款應用于嵌入式設備如路由器等的Linux操作系統。類似于kali等linux系統中的apt-get等&#xff0c;該系統中下載應用使用的是opgk工具&#xff0c;其通過非加密的HTTP連接來下載應用。但是其下載的應用使用了SHA256sum哈希值來進行檢驗&#xff0c;所以將下載到的數據…