自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

我們聊聊 Nginx 負(fù)載的參數(shù)優(yōu)化,你學(xué)會(huì)了嗎?

開發(fā) 前端
`sendfile` 指令用于啟用高效文件傳輸模式,可以減少 CPU 開銷,因?yàn)樗试S操作系統(tǒng)直接傳輸文件數(shù)據(jù)到網(wǎng)絡(luò),而不需要復(fù)制到用戶空間。

Nginx 是一個(gè)高性能的 HTTP 和反向代理服務(wù)器,它的優(yōu)化可以提升網(wǎng)站的性能和穩(wěn)定性。

以下是一些基于搜索結(jié)果的 Nginx 負(fù)載參數(shù)優(yōu)化經(jīng)驗(yàn)分享。

No.1 Worker Processes

"""nginx
worker_processes auto; # 自動(dòng)設(shè)置與 CPU 核心數(shù)相同的進(jìn)程數(shù)
"""

這個(gè)指令用來設(shè)置 Nginx 運(yùn)行的工作進(jìn)程數(shù)。通常情況下,每個(gè) CPU 核心分配一個(gè)工作進(jìn)程可以取得較好的性能。

No.2 Worker CPU Affinity

"""nginx
worker_cpu_affinity 0001 0010 0100 1000; # 為每個(gè)工作進(jìn)程分配特定的 CPU 核心
"""

通過為每個(gè)工作進(jìn)程分配特定的 CPU 核心,可以提高 CPU 緩存的效率,減少進(jìn)程間的上下文切換。

No.3 Worker Connections

"""nginx
worker_connections 10240; # 每個(gè)工作進(jìn)程的最大連接數(shù)
"""

這個(gè)指令定義了每個(gè)工作進(jìn)程可以打開的最大連接數(shù),默認(rèn)值通常是 512,但現(xiàn)代服務(wù)器硬件通??梢蕴幚砀叩倪B接數(shù)。

No.4 Events Configuration

"""nginx
use epoll; # 在 Linux 上使用高效的 I/O 多路復(fù)用模型
events {
worker_connections 10240; # 每個(gè)工作進(jìn)程可以同時(shí)處理的連接數(shù)
}
"""

`use epoll;` 指定了事件處理模型,在 Linux 系統(tǒng)上,epoll 是一個(gè)高性能的 I/O 多路復(fù)用模型。

No.5 Sendfile

"""nginx
sendfile on; # 開啟高效文件傳輸模式
"""

`sendfile` 指令用于啟用高效文件傳輸模式,可以減少 CPU 開銷,因?yàn)樗试S操作系統(tǒng)直接傳輸文件數(shù)據(jù)到網(wǎng)絡(luò),而不需要復(fù)制到用戶空間。

No.6 TCP Nopush

"""nginx
tcp_nopush on; # 結(jié)合 Sendfile 使用,減少網(wǎng)絡(luò)報(bào)文段的數(shù)量
"""

`tcp_nopush` 指令用于確保數(shù)據(jù)在發(fā)送到網(wǎng)絡(luò)之前被緩存,與 `sendfile` 結(jié)合使用可以提高網(wǎng)絡(luò)傳輸效率。

No.7 Keepalive Timeout

"""nginx
keepalive_timeout 65; # 長(zhǎng)連接超時(shí)時(shí)間
"""

`keepalive_timeout` 設(shè)置了長(zhǎng)連接的超時(shí)時(shí)間,可以根據(jù)服務(wù)器的業(yè)務(wù)需求進(jìn)行調(diào)整。

No.8 Gzip Compression

"""nginx
gzip on; # 開啟 Gzip 壓縮
gzip_min_length 1k; # 頁(yè)面字節(jié)數(shù)小于 1k 不壓縮
gzip_buffers 4 32k; # 設(shè)置壓縮緩沖區(qū)大小
gzip_http_version 1.1; # 設(shè)置壓縮版本
gzip_comp_level 6; # 設(shè)置壓縮級(jí)別
gzip_types text/css text/xml application/javascript; # 設(shè)置需要壓縮的 MIME 類型
"""

通過啟用 Gzip 壓縮,可以減少傳輸?shù)臄?shù)據(jù)量,加快頁(yè)面加載速度。但要注意,對(duì)小文件進(jìn)行壓縮可能不會(huì)減少其大小。

No.9 Proxy Settings

"""nginx
proxy_connect_timeout 90; # 代理連接超時(shí)時(shí)間
proxy_send_timeout 90; # 代理發(fā)送超時(shí)時(shí)間
proxy_read_timeout 90; # 代理讀取超時(shí)時(shí)間
proxy_buffers 4 32k; # 設(shè)置代理緩沖區(qū)大小
"""

這些指令用于調(diào)整代理服務(wù)器的超時(shí)設(shè)置和緩沖區(qū)大小,可以根據(jù)后端服務(wù)器的性能進(jìn)行調(diào)整。

No.10 Linux System Tuning

"""shell
net.core.somaxconn = 262144 # 調(diào)整系統(tǒng)同時(shí)發(fā)起的tcp連接數(shù)
net.ipv4.tcp_tw_recycle = 1 # 啟用 TCP 連接重用
net.ipv4.tcp_fin_timeout = 15 # 減少臨時(shí)端口的等待時(shí)間
"""

調(diào)整 Linux 系統(tǒng)內(nèi)核參數(shù)可以提升服務(wù)器的網(wǎng)絡(luò)性能。

No.11 Access Log Buffering

"""nginx
access_log /var/log/nginx/access.log main buffer=16k flush=5m; # 使用緩沖區(qū)記錄訪問日志
"""

通過設(shè)置日志緩沖區(qū),可以減少磁盤 I/O 操作,提高性能。

No.12 Limitations

"""nginx
limit_conn perip 2; # 限制單個(gè) IP 地址的連接數(shù)
limit_rate 300k; # 限制單個(gè)連接的速率
"""

使用 `limit_conn` 和 `limit_rate` 可以限制客戶端的連接數(shù)和帶寬使用,防止單個(gè)客戶端占用過多資源。

責(zé)任編輯:武曉燕 來源: IT那活兒
相關(guān)推薦

2023-12-05 17:57:13

nginx參數(shù)

2023-12-07 12:29:49

Nginx負(fù)載均衡策略

2024-09-13 09:05:31

架構(gòu)思維程序

2023-11-13 18:36:04

知識(shí)抽取NER

2023-10-31 14:04:17

Rust類型編譯器

2024-10-31 09:15:09

2024-08-06 09:47:57

2023-06-07 14:07:00

架構(gòu)

2023-04-13 08:40:12

MySQL服務(wù)器SELECT

2022-12-26 07:48:04

敏捷項(xiàng)目

2024-06-12 08:36:25

2024-03-05 10:09:16

restfulHTTPAPI

2024-08-19 10:24:14

2023-01-29 08:08:34

并發(fā)庫(kù)conc通用庫(kù)

2023-07-10 08:36:21

工具pptword

2024-03-04 07:41:18

SpringAOPOOP?

2022-12-27 08:45:00

繪制菜單符號(hào)

2022-07-11 09:00:37

依賴配置文件Mybati

2022-04-13 09:01:45

SASSCSS處理器

2022-09-26 08:49:11

Java架構(gòu)CPU
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)