chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Nginx在企業(yè)環(huán)境中的調(diào)優(yōu)策略

馬哥Linux運(yùn)維 ? 來源:馬哥Linux運(yùn)維 ? 2025-07-14 11:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

Nginx作為現(xiàn)代互聯(lián)網(wǎng)架構(gòu)中最重要的Web服務(wù)器和反向代理服務(wù)器,其性能調(diào)優(yōu)對(duì)企業(yè)級(jí)應(yīng)用的穩(wěn)定性和效率至關(guān)重要。本指南將從運(yùn)維實(shí)踐角度出發(fā),詳細(xì)介紹Nginx在企業(yè)環(huán)境中的各種調(diào)優(yōu)策略和最佳實(shí)踐。

一、基礎(chǔ)配置調(diào)優(yōu)

1.1 工作進(jìn)程配置

# 根據(jù)CPU核心數(shù)設(shè)置工作進(jìn)程數(shù)
worker_processesauto;

# 工作進(jìn)程綁定CPU核心
worker_cpu_affinityauto;

# 單個(gè)工作進(jìn)程最大連接數(shù)
worker_connections65535;

# 工作進(jìn)程最大打開文件數(shù)
worker_rlimit_nofile65535;

1.2 事件模型優(yōu)化

events{
 # 使用epoll事件模型(Linux系統(tǒng))
 useepoll;
 
 # 允許同時(shí)接受多個(gè)新連接
 multi_accepton;
 
 # 工作進(jìn)程最大連接數(shù)
 worker_connections65535;
 
 # 接受連接鎖
 accept_mutexoff;
}

1.3 網(wǎng)絡(luò)連接優(yōu)化

# 啟用高效文件傳輸
sendfileon;

# 優(yōu)化sendfile性能
tcp_nopushon;
tcp_nodelayon;

# 連接保持時(shí)間
keepalive_timeout65;
keepalive_requests100;

# 客戶端請(qǐng)求頭超時(shí)
client_header_timeout15;

# 客戶端請(qǐng)求體超時(shí)
client_body_timeout15;

# 向客戶端發(fā)送響應(yīng)超時(shí)
send_timeout15;

二、內(nèi)存和緩沖區(qū)調(diào)優(yōu)

2.1 緩沖區(qū)設(shè)置

# 客戶端請(qǐng)求頭緩沖區(qū)
client_header_buffer_size4k;
large_client_header_buffers88k;

# 客戶端請(qǐng)求體緩沖區(qū)
client_body_buffer_size128k;
client_max_body_size100m;

# 代理緩沖區(qū)
proxy_buffer_size4k;
proxy_buffers84k;
proxy_busy_buffers_size8k;

# FastCGI緩沖區(qū)
fastcgi_buffer_size4k;
fastcgi_buffers84k;
fastcgi_busy_buffers_size8k;

2.2 文件緩存配置

# 打開文件緩存
open_file_cachemax=100000inactive=20s;
open_file_cache_valid30s;
open_file_cache_min_uses2;
open_file_cache_errorson;

# 日志緩存
access_log/var/log/nginx/access.log main buffer=32kflush=5s;
error_log/var/log/nginx/error.logwarn;

三、壓縮優(yōu)化

3.1 Gzip壓縮

# 啟用Gzip壓縮
gzipon;
gzip_varyon;
gzip_min_length1000;
gzip_comp_level6;
gzip_proxiedany;

# 壓縮文件類型
gzip_types
  text/plain
  text/css
  text/xml
  text/javascript
  application/javascript
  application/json
  application/xml+rss
  application/atom+xml
  image/svg+xml;

# 壓縮緩沖區(qū)
gzip_buffers168k;
gzip_http_version1.1;

3.2 Brotli壓縮(需要模塊支持)

# 啟用Brotli壓縮
brotlion;
brotli_comp_level6;
brotli_min_length1000;
brotli_types
  text/plain
  text/css
  text/xml
  text/javascript
  application/javascript
  application/json
  application/xml
  application/rss+xml
  application/atom+xml
  image/svg+xml;

四、SSL/TLS優(yōu)化

4.1 SSL配置優(yōu)化

# SSL協(xié)議版本
ssl_protocolsTLSv1.2TLSv1.3;

# 加密套件
ssl_ciphersECDHE-RSA-AES128-GCM-SHA256ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384;
ssl_prefer_server_cipherson;

# SSL會(huì)話緩存
ssl_session_cacheshared50m;
ssl_session_timeout1d;
ssl_session_ticketsoff;

# OCSP Stapling
ssl_staplingon;
ssl_stapling_verifyon;
ssl_trusted_certificate/path/to/ca-bundle.crt;

4.2 HTTP/2配置

server{
 listen443ssl http2;
 server_nameexample.com;
 
 # HTTP/2推送
 http2_push_preloadon;
 
 # 其他SSL配置...
}

五、負(fù)載均衡和代理優(yōu)化

5.1 上游服務(wù)器配置

upstreambackend {
 # 負(fù)載均衡算法
  ip_hash;
 
 # 后端服務(wù)器
 server192.168.1.10:8080weight=3max_fails=3fail_timeout=30s;
 server192.168.1.11:8080weight=2max_fails=3fail_timeout=30s;
 server192.168.1.12:8080weight=1max_fails=3fail_timeout=30sbackup;
 
 # 連接保持
 keepalive32;
 keepalive_requests100;
 keepalive_timeout60s;
}

5.2 代理配置優(yōu)化

location/ {
 proxy_passhttp://backend;
 
 # 代理超時(shí)設(shè)置
 proxy_connect_timeout5s;
 proxy_send_timeout60s;
 proxy_read_timeout60s;
 
 # 代理緩沖
 proxy_bufferingon;
 proxy_buffer_size4k;
 proxy_buffers84k;
 
 # 代理頭信息
 proxy_set_headerHost$host;
 proxy_set_headerX-Real-IP$remote_addr;
 proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;
 proxy_set_headerX-Forwarded-Proto$scheme;
 
 # HTTP版本
 proxy_http_version1.1;
 proxy_set_headerConnection"";
}

六、緩存策略

6.1 靜態(tài)資源緩存

# 圖片、CSS、JS緩存
location~* .(jpg|jpeg|png|gif|ico|css|js)${
 expires1y;
 add_headerCache-Control"public, immutable";
 add_headerVary Accept-Encoding;
}

# 字體文件緩存
location~* .(woff|woff2|ttf|eot)${
 expires1y;
 add_headerCache-Control"public";
 add_headerAccess-Control-Allow-Origin *;
}

6.2 代理緩存

# 緩存配置
proxy_cache_path/var/cache/nginx levels=1:2keys_zone=my_cache:10mmax_size=10ginactive=60muse_temp_path=off;

server{
 location/ {
   proxy_cachemy_cache;
   proxy_cache_valid20030210m;
   proxy_cache_valid4041m;
   proxy_cache_use_staleerrortimeout updating http_500 http_502 http_503 http_504;
   proxy_cache_lockon;
   proxy_cache_lock_timeout5s;
   
   # 緩存key
   proxy_cache_key$scheme$proxy_host$request_uri;
   
   # 緩存頭信息
   add_headerX-Cache-Status$upstream_cache_status;
   
   proxy_passhttp://backend;
  }
}

七、安全加固

7.1 基礎(chǔ)安全配置

# 隱藏版本信息
server_tokensoff;

# 安全頭
add_headerX-Frame-Options"SAMEORIGIN"always;
add_headerX-Content-Type-Options"nosniff"always;
add_headerX-XSS-Protection"1; mode=block"always;
add_headerReferrer-Policy"strict-origin-when-cross-origin"always;

# 限制請(qǐng)求方法
if($request_method!~ ^(GET|HEAD|POST)$){
 return405;
}

7.2 請(qǐng)求限制

# 限制請(qǐng)求頻率
limit_req_zone$binary_remote_addrzone=api:10mrate=10r/s;
limit_req_zone$binary_remote_addrzone=login:10mrate=1r/s;

server{
 location/api/ {
   limit_reqzone=api burst=20nodelay;
   limit_req_status429;
  }
 
 location/login {
   limit_reqzone=login burst=5nodelay;
   limit_req_status429;
  }
}

# 限制連接數(shù)
limit_conn_zone$binary_remote_addrzone=conn_limit_per_ip:10m;
limit_connconn_limit_per_ip10;

八、監(jiān)控和日志

8.1 訪問日志優(yōu)化

# 自定義日志格式
log_formatmain'$remote_addr-$remote_user[$time_local] "$request" '
       '$status$body_bytes_sent"$http_referer" '
       '"$http_user_agent" "$http_x_forwarded_for" '
       '$request_time$upstream_response_time';

# 條件日志記錄
map$status$loggable{
  ~^[23] 0;
 default1;
}

access_log/var/log/nginx/access.log main buffer=32kflush=5sif=$loggable;

8.2 狀態(tài)監(jiān)控

# 啟用狀態(tài)頁(yè)面
location/nginx_status {
 stub_statuson;
 access_logoff;
 allow127.0.0.1;
 allow192.168.1.0/24;
 denyall;
}

九、系統(tǒng)級(jí)優(yōu)化

9.1 內(nèi)核參數(shù)調(diào)優(yōu)

# /etc/sysctl.conf
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 5000
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.ip_local_port_range = 1024 65535
fs.file-max = 6815744

9.2 文件描述符限制

# /etc/security/limits.conf
nginx soft nofile 65535
nginx hard nofile 65535
nginx softnproc65535
nginx hardnproc65535

十、性能監(jiān)控和調(diào)優(yōu)工具

10.1 監(jiān)控指標(biāo)

關(guān)鍵監(jiān)控指標(biāo)包括:

? 請(qǐng)求處理時(shí)間

? 并發(fā)連接數(shù)

? 錯(cuò)誤率

? 內(nèi)存使用情況

? CPU使用率

? 網(wǎng)絡(luò)帶寬利用率

10.2 性能測(cè)試工具

# 使用wrk進(jìn)行壓力測(cè)試
wrk -t12 -c400 -d30s --latency http://example.com/

# 使用ab進(jìn)行基準(zhǔn)測(cè)試
ab -n 10000 -c 100 http://example.com/

# 使用siege進(jìn)行并發(fā)測(cè)試
siege -c 100 -t 30s http://example.com/

十一、最佳實(shí)踐總結(jié)

1.合理配置工作進(jìn)程數(shù):通常設(shè)置為CPU核心數(shù)或使用auto自動(dòng)檢測(cè)

2.優(yōu)化緩沖區(qū)大小:根據(jù)實(shí)際業(yè)務(wù)需求調(diào)整緩沖區(qū)大小

3.啟用壓縮:對(duì)文本類型資源啟用gzip壓縮

4.配置合理的超時(shí)時(shí)間:避免長(zhǎng)時(shí)間占用連接

5.使用HTTP/2:提升多路復(fù)用性能

6.實(shí)施緩存策略:合理設(shè)置靜態(tài)資源和代理緩存

7.定期監(jiān)控和優(yōu)化:持續(xù)監(jiān)控性能指標(biāo)并進(jìn)行調(diào)優(yōu)

十二、故障排查

12.1 常見問題診斷

# 檢查Nginx配置
nginx -t

# 查看錯(cuò)誤日志
tail-f /var/log/nginx/error.log

# 檢查進(jìn)程狀態(tài)
ps aux | grep nginx

# 查看連接狀態(tài)
netstat -an | grep :80 |wc-l

# 檢查文件描述符使用情況
lsof -u nginx |wc-l

12.2 性能問題排查

當(dāng)遇到性能問題時(shí),應(yīng)該:

1. 檢查系統(tǒng)資源使用情況

2. 分析訪問日志模式

3. 監(jiān)控上游服務(wù)器響應(yīng)時(shí)間

4. 檢查緩存命中率

5. 分析網(wǎng)絡(luò)連接狀態(tài)

通過系統(tǒng)性的調(diào)優(yōu)和持續(xù)的監(jiān)控,可以顯著提升Nginx在企業(yè)環(huán)境中的性能表現(xiàn),確保業(yè)務(wù)的穩(wěn)定運(yùn)行。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 互聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    55

    文章

    11333

    瀏覽量

    109754
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    14

    文章

    10223

    瀏覽量

    91409
  • nginx
    +關(guān)注

    關(guān)注

    0

    文章

    184

    瀏覽量

    13081

原文標(biāo)題:大廠Nginx調(diào)優(yōu)秘籍:QPS提升500%的核心配置技巧

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    HarmonyOSAI編程智慧調(diào)優(yōu)

    Beta1版本開始支持。 注意 當(dāng)前支持對(duì)Launch冷啟動(dòng)問題和Frame卡頓丟幀問題進(jìn)行智慧調(diào)優(yōu)分析。 Profiler工具已集成智慧調(diào)優(yōu)
    發(fā)表于 09-01 15:15

    KeenTune的算法之心——KeenOpt 調(diào)優(yōu)算法框架 | 龍蜥技術(shù)

    調(diào)優(yōu)算法,本質(zhì)上是一個(gè)漆黑的空間中摸索,而隨著維度的增加,這個(gè)漆黑的環(huán)境的 volume 急劇增大,摸索的時(shí)間成本的增加是不可避免的。對(duì)于機(jī)器學(xué)習(xí)模型超參數(shù)的
    發(fā)表于 10-28 10:36

    如何對(duì)電機(jī)進(jìn)行調(diào)優(yōu)?調(diào)優(yōu)的好處是什么?

    如何自動(dòng)對(duì)電機(jī)進(jìn)行調(diào)優(yōu)
    的頭像 發(fā)表于 08-22 00:03 ?4002次閱讀

    基于臭氧的Kafka自適應(yīng)調(diào)優(yōu)方法ENLHS

    Kafka應(yīng)用在生產(chǎn)環(huán)境時(shí),除機(jī)器的硬件環(huán)境和系統(tǒng)平臺(tái)影響其性能外,Kaka自身的配置項(xiàng)決定著其能否硬件資源有限的情況下達(dá)到理想的性能,但人為修改和
    發(fā)表于 05-13 11:39 ?7次下載

    Linux用電功耗調(diào)優(yōu)的筆記分享

    整理一些Linux用電功耗調(diào)優(yōu)的筆記,分享給小伙伴,關(guān)于用電調(diào)優(yōu)個(gè)人覺得
    的頭像 發(fā)表于 06-23 15:19 ?5561次閱讀

    關(guān)于JVM的調(diào)優(yōu)知識(shí)

    最近很多小伙伴跟我說,自己學(xué)了不少JVM的調(diào)優(yōu)知識(shí),但是實(shí)際工作卻不知道何時(shí)對(duì)JVM進(jìn)行調(diào)優(yōu)
    的頭像 發(fā)表于 09-14 14:54 ?1392次閱讀

    KeenOpt調(diào)優(yōu)算法框架實(shí)現(xiàn)對(duì)調(diào)優(yōu)對(duì)象和配套工具的快速適配

    化的調(diào)優(yōu)算法。 聰明的童鞋一定會(huì)自然問出一個(gè)問題:為什么不能只調(diào)用當(dāng)前流行的調(diào)優(yōu)算法庫(kù),而要打造一個(gè)算法框架呢?這就要從我們調(diào)
    的頭像 發(fā)表于 11-11 09:31 ?1572次閱讀

    高性能Nginx HTTPS調(diào)優(yōu)-如何為HTTPS提速30%

    Nginx 常作為最常見的服務(wù)器,常被用作負(fù)載均衡 (Load Balancer)、反向代理 (Reverse Proxy),以及網(wǎng)關(guān) (Gateway) 等等。一個(gè)配置得當(dāng)?shù)?Nginx 服務(wù)器單機(jī)應(yīng)該可以期望承受住 50K 到 80K 左右每秒的請(qǐng)求,同時(shí)將 CPU
    的頭像 發(fā)表于 01-16 11:20 ?1458次閱讀

    javajvm調(diào)優(yōu)有幾種方法

    JVM調(diào)優(yōu)是Java應(yīng)用程序性能優(yōu)化過程的重要步驟,它通過針對(duì)JVM進(jìn)行優(yōu)化來提高應(yīng)用程序的性能和可靠性。JVM調(diào)優(yōu)可以根據(jù)具體的場(chǎng)景和需
    的頭像 發(fā)表于 12-05 11:11 ?2806次閱讀

    什么場(chǎng)景需要jvm調(diào)優(yōu)

    JVM調(diào)優(yōu)是指對(duì)Java虛擬機(jī)進(jìn)行性能優(yōu)化和資源管理,以提高應(yīng)用程序的運(yùn)行效率和吞吐量。JVM調(diào)優(yōu)的場(chǎng)景有很多,下面將詳細(xì)介紹各種不同的場(chǎng)景。 高并發(fā)場(chǎng)景:
    的頭像 發(fā)表于 12-05 11:14 ?2192次閱讀

    jvm調(diào)優(yōu)主要是調(diào)哪里

    JVM調(diào)優(yōu)主要涉及內(nèi)存管理、垃圾回收、線程管理與鎖優(yōu)化等方面。下面將詳細(xì)介紹每個(gè)方面的調(diào)優(yōu)技術(shù)和策略以及如何進(jìn)行優(yōu)化。 內(nèi)存管理 JVM的內(nèi)
    的頭像 發(fā)表于 12-05 11:37 ?2278次閱讀

    鴻蒙開發(fā)實(shí)戰(zhàn):【性能調(diào)優(yōu)組件】

    性能調(diào)優(yōu)組件包含系統(tǒng)和應(yīng)用調(diào)優(yōu)框架,旨在為開發(fā)者提供一套性能調(diào)優(yōu)平臺(tái),可以用來分析內(nèi)存、性能等問
    的頭像 發(fā)表于 03-13 15:12 ?1372次閱讀
    鴻蒙開發(fā)實(shí)戰(zhàn):【性能<b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>組件】

    深度解析JVM調(diào)優(yōu)實(shí)踐應(yīng)用

    Tomcat自身的調(diào)優(yōu)是針對(duì)conf/server.xml的幾個(gè)參數(shù)的調(diào)優(yōu)設(shè)置。首先是對(duì)這幾個(gè)參數(shù)的含義要有深刻而清楚的理解。
    的頭像 發(fā)表于 04-01 10:24 ?1305次閱讀
    深度解析JVM<b class='flag-5'>調(diào)</b><b class='flag-5'>優(yōu)</b>實(shí)踐應(yīng)用

    xgboost超參數(shù)調(diào)優(yōu)技巧 xgboost圖像分類的應(yīng)用

    一、XGBoost超參數(shù)調(diào)優(yōu)技巧 XGBoost(eXtreme Gradient Boosting)是一種基于梯度提升決策樹(GBDT)的高效梯度提升框架,機(jī)器學(xué)習(xí)競(jìng)賽和實(shí)際業(yè)務(wù)應(yīng)用
    的頭像 發(fā)表于 01-31 15:16 ?2504次閱讀

    Nginx性能優(yōu)化終極指南

    而worker 進(jìn)程數(shù)默認(rèn)為 1 。單進(jìn)程最大連接數(shù)為1024。如下圖(打開Nginx目錄下的/conf/nginx.conf 文檔),現(xiàn)在我們來對(duì)這兩個(gè)數(shù)值進(jìn)行調(diào)優(yōu)
    的頭像 發(fā)表于 06-16 13:44 ?1218次閱讀
    <b class='flag-5'>Nginx</b>性能優(yōu)化終極指南