中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

網(wǎng)站運行環(huán)境配置seo推廣灰色詞

網(wǎng)站運行環(huán)境配置,seo推廣灰色詞,php做的網(wǎng)站有,全國疫情防控措施一、背景介紹 在現(xiàn)代網(wǎng)絡(luò)架構(gòu)中,Nginx 作為一款高性能的 Web 服務(wù)器和反向代理服務(wù)器,廣泛應(yīng)用于各種場景。除了對 HTTP/HTTPS 協(xié)議的出色支持,Nginx 從 1.9.0 版本開始引入了對 TCP 和 UDP 協(xié)議的代理功能,這使得它在處理數(shù)據(jù)庫…

一、背景介紹

在現(xiàn)代網(wǎng)絡(luò)架構(gòu)中,Nginx 作為一款高性能的 Web 服務(wù)器和反向代理服務(wù)器,廣泛應(yīng)用于各種場景。除了對 HTTP/HTTPS 協(xié)議的出色支持,Nginx 從 1.9.0 版本開始引入了對 TCP 和 UDP 協(xié)議的代理功能,這使得它在處理數(shù)據(jù)庫連接代理、流媒體服務(wù)代理等 TCP 相關(guān)業(yè)務(wù)場景中也發(fā)揮著重要作用。
在 TCP 代理場景下,準(zhǔn)確、詳細(xì)的日志記錄對于監(jiān)控服務(wù)運行狀態(tài)、排查故障、分析業(yè)務(wù)流量等工作至關(guān)重要。通過合理配置 Nginx 的 TCP 日志輸出,運維人員和開發(fā)人員能夠獲取到豐富的信息,如客戶端連接來源、后端服務(wù)器響應(yīng)情況、數(shù)據(jù)傳輸量等,從而為系統(tǒng)的穩(wěn)定運行和優(yōu)化提供有力支持。

二、原理剖析

Nginx 的 TCP 日志輸出依賴于其內(nèi)部的日志模塊,在 TCP 代理過程中,當(dāng)客戶端與 Nginx 建立連接,Nginx 再與后端服務(wù)器建立連接并進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)時,日志模塊會在不同階段收集各種相關(guān)信息。這些信息包括但不限于連接的源地址和目標(biāo)地址、協(xié)議類型、連接狀態(tài)、數(shù)據(jù)傳輸?shù)淖止?jié)數(shù)等。
根據(jù)配置的日志格式和規(guī)則,日志模塊將收集到的信息進(jìn)行格式化處理,并在適當(dāng)?shù)臅r機將日志寫入到指定的文件中。默認(rèn)情況下,Nginx 會在 TCP 連接斷開時完成日志記錄并寫入文件,以減少頻繁的磁盤 I/O 操作對性能的影響。然而,通過一些配置調(diào)整,我們可以改變?nèi)罩居涗浀臅r機和方式,使其更符合業(yè)務(wù)需求。

三、詳細(xì)配置步驟

3.1 確認(rèn) Nginx 支持 stream 模塊

在進(jìn)行 TCP 日志配置前,首先要確保 Nginx 已啟用stream模塊。如果在啟動 Nginx 時出現(xiàn)nginx: [emerg] unknown directive "stream"錯誤,說明 Nginx 在編譯時未包含該模塊??梢酝ㄟ^重新編譯 Nginx 并添加–with-stream選項來解決,或者使用包管理器安裝支持stream模塊的 Nginx 版本(不同系統(tǒng)的包管理器操作有所不同,如在 Ubuntu 中可嘗試安裝nginx-stream-module相關(guān)包)。

3.2 配置日志格式

在 Nginx 配置文件中,一般在stream模塊內(nèi)定義日志格式。例如:

stream {log_format tcp_log '$remote_addr - $upstream_addr - [$time_local] ''$protocol $status $bytes_sent $bytes_received';...
}

在上述配置中:

  1. $remote_addr表示客戶端的 IP 地址。
  2. $upstream_addr是后端服務(wù)器的地址。
  3. $time_local為本地時間。
  4. $protocol指使用的協(xié)議(如 TCP)。
  5. $status表示連接狀態(tài)。
  6. b y t e s s e n t 和 bytes_sent和 bytess?entbytes_received分別是發(fā)送給客戶端和從客戶端接收的字節(jié)數(shù)。

3.3 配置訪問日志

配置好日志格式后,需要指定日志文件路徑以及使用的日志格式。例如:

stream {...access_log /opt/app/nginx/log/doris-proxy.log tcp_log buffer=32k flush=5m;
}

這里,/opt/app/nginx/log/doris-proxy.log是日志文件路徑。tcp_log是前面定義的日志格式名稱。buffer=32k設(shè)置了日志緩沖區(qū)大小為 32KB,以減少磁盤 I/O 次數(shù)。flush=5m表示每 5 分鐘將緩沖區(qū)中的日志刷新到磁盤。如果希望日志更實時地記錄,可以適當(dāng)減小flush的時間間隔,如flush=10s。

3.4 配置錯誤日志

除了訪問日志,錯誤日志對于排查問題也非常重要。在stream模塊中添加錯誤日志配置:

stream {...error_log /opt/app/nginx/log/doris-proxy-error.log notice;
}

/opt/app/nginx/log/doris-proxy-error.log是錯誤日志文件路徑,notice是日志級別。可以根據(jù)實際需求調(diào)整日志級別,如debug(最詳細(xì))、info、warn、error、crit(最簡略)。

3.5 配置 TCP 代理服務(wù)器并關(guān)聯(lián)日志

在stream模塊內(nèi)配置 TCP 代理服務(wù)器,并確保每個server塊中關(guān)聯(lián)上述定義的日志配置。例如:

stream {...server {listen 7034;proxy_connect_timeout 300s;proxy_timeout 3880000s;proxy_pass backend_server;access_log /opt/app/nginx/log/doris-proxy.log tcp_log buffer=32k flush=5m;error_log /opt/app/nginx/log/doris-proxy-error.log notice;}
}

backend_server應(yīng)替換為實際的后端服務(wù)器地址或服務(wù)器組名稱。

3.6 檢查配置并重啟 Nginx

完成配置修改后,使用nginx -t命令檢查配置文件語法是否正確。如果無誤,執(zhí)行sudo service nginx restart命令重啟 Nginx 服務(wù),使配置生效。
實際效果如下

四、日志格式詳解

Nginx 提供了豐富的內(nèi)置變量用于日志格式定義,通過組合這些變量,可以創(chuàng)建滿足不同需求的日志格式。除了前面提到的常用變量,還有:

  1. $session_time:會話持續(xù)時間,即從客戶端連接到連接斷開的總時長。
  2. $upstream_bytes_sent:發(fā)送給后端服務(wù)器的字節(jié)數(shù)。
  3. $upstream_bytes_received:從后端服務(wù)器接收的字節(jié)數(shù)。
  4. $upstream_connect_time:與后端服務(wù)器建立連接所花費的時間。

例如,以下是一個更詳細(xì)的日志格式定義:

log_format detailed_tcp_log '$remote_addr [$time_local] ''$protocol $status $bytes_sent $bytes_received ''$session_time "$upstream_addr" ''"$upstream_bytes_sent" "$upstream_bytes_received" "$upstream_connect_time"';

這種詳細(xì)的日志格式能夠提供更全面的信息,幫助運維人員深入分析 TCP 連接的整個生命周期和數(shù)據(jù)傳輸情況。

五、高級設(shè)置

5.1 日志緩存優(yōu)化

Nginx 使用日志緩存來提高性能,減少磁盤 I/O 操作。除了前面提到的buffer和flush參數(shù),還可以通過open_log_file_cache指令進(jìn)一步優(yōu)化日志緩存。例如:

open_log_file_cache max=1000 inactive=20s valid=1m min_uses=2;
  1. max:指定緩存中最多可以存儲的日志文件描述符數(shù)量。
  2. inactive:設(shè)置在多長時間內(nèi)(這里是 20 秒),如果一個日志文件描述符沒有被使用,就會從緩存中移除。
  3. valid:表示每隔 1 分鐘檢查一次緩存中日志文件的狀態(tài),確保其有效性。
  4. min_uses:規(guī)定一個日志文件描述符至少被使用 2 次后才會被緩存。

5.2 日志輪轉(zhuǎn)

隨著時間的推移,日志文件會不斷增大,為了管理日志文件大小并保留歷史日志,需要進(jìn)行日志輪轉(zhuǎn)。在類 Unix 系統(tǒng)中,通常使用logrotate工具來實現(xiàn)。例如,在/etc/logrotate.d/目錄下創(chuàng)建一個針對 Nginx TCP 日志的配置文件,內(nèi)容如下:

/opt/app/nginx/log/doris-proxy.log {dailymissingokrotate 7compressdelaycompressnotifemptycreate 640 nginx nginxsharedscriptspostrotate/usr/sbin/nginx -s reopenendscript
}

上述配置表示:

  1. daily:每天進(jìn)行一次日志輪轉(zhuǎn)。
  2. missingok:如果日志文件不存在,不報錯繼續(xù)執(zhí)行。
  3. rotate 7:保留 7 天的日志文件,舊的日志文件將被刪除。
  4. compress:對輪轉(zhuǎn)后的日志文件進(jìn)行壓縮。
  5. delaycompress:延遲壓縮,在下一次輪轉(zhuǎn)時壓縮上一次輪轉(zhuǎn)的日志文件。
  6. notifempty:如果日志文件為空,不進(jìn)行輪轉(zhuǎn)。
  7. create 640 nginx nginx:輪轉(zhuǎn)后創(chuàng)建新的日志文件,權(quán)限為 640,所有者和組為nginx。
  8. sharedscripts:只在所有日志文件都輪轉(zhuǎn)后執(zhí)行一次腳本。
  9. postrotate和endscript之間的命令/usr/sbin/nginx -s reopen:通知 Nginx 重新打開日志文件,以便將新的日志寫入新文件。

5.3 基于條件的日志記錄

在某些情況下,可能希望只記錄特定條件下的 TCP 連接日志。例如,只記錄與特定后端服務(wù)器通信的日志,或者只記錄傳輸字節(jié)數(shù)超過一定閾值的日志。雖然 Nginx 原生的 TCP 日志模塊沒有像 HTTP 模塊那樣強大的條件日志功能,但可以通過一些第三方模塊(如nginx-sticky-module-ng)或結(jié)合日志收集工具(如logstash、fluentd)來實現(xiàn)。
例如,使用logstash可以在日志收集階段對 Nginx TCP 日志進(jìn)行過濾和處理。在logstash的配置文件中,可以編寫如下規(guī)則:

input {file {path => "/opt/app/nginx/log/doris-proxy.log"start_position => "beginning"}
}
filter {if [message] =~ /192.168.1.100/ {# 只處理與IP為192.168.1.100的后端服務(wù)器相關(guān)的日志}
}
output {elasticsearch {hosts => ["localhost:9200"]index => "nginx_tcp_logs"}
}

通過這種方式,可以實現(xiàn)更靈活、更有針對性的日志記錄和處理。
通過對 Nginx TCP 日志輸出的深入理解和合理配置,能夠更好地監(jiān)控和管理基于 TCP 協(xié)議的服務(wù),為系統(tǒng)的穩(wěn)定運行和優(yōu)化提供有力支持。希望本文所介紹的內(nèi)容能幫助讀者在實際工作中充分利用 Nginx 的日志功能,提升系統(tǒng)運維和開發(fā)的效率。nginx官網(wǎng)詳細(xì)配置

http://www.risenshineclean.com/news/5109.html

相關(guān)文章:

  • 重慶網(wǎng)站建設(shè)seo公司抖音seo優(yōu)化
  • 個人網(wǎng)站建設(shè)基礎(chǔ)與實例重慶seo網(wǎng)絡(luò)優(yōu)化咨詢熱線
  • 旅游門戶網(wǎng)站有哪些seo域名綜合查詢
  • 18g網(wǎng)站空間圖片識別搜索引擎
  • 博客網(wǎng)站建設(shè)方案電腦課程培訓(xùn)零基礎(chǔ)
  • 男直接做的視頻網(wǎng)站軟文營銷的技巧有哪些?
  • asp網(wǎng)站源碼說明留號碼的廣告網(wǎng)站
  • 品牌寶網(wǎng)站認(rèn)證中國網(wǎng)民博客 seo
  • 貴陽公司做網(wǎng)站各種網(wǎng)站
  • 深圳知名網(wǎng)站建設(shè)就在剛剛武漢宣布最新消息
  • 水果網(wǎng)站策劃方案百度seo優(yōu)化價格
  • 湘西吉首市建設(shè)局網(wǎng)站百度圖片查找
  • wordpress默認(rèn)index百度seo怎么收費
  • 鄭州hi寶貝網(wǎng)站建設(shè)公司定制網(wǎng)站開發(fā)公司
  • 許昌做網(wǎng)站公司專業(yè)做網(wǎng)站哪家好下載微信
  • 免費做封面的網(wǎng)站新聞稿件
  • 建設(shè)校園網(wǎng)站必要性網(wǎng)站營銷網(wǎng)站營銷推廣
  • 左側(cè)導(dǎo)航網(wǎng)站站外推廣方式有哪些
  • 網(wǎng)站數(shù)據(jù)庫怎么做同步網(wǎng)站seo推廣營銷
  • 做磁力網(wǎng)站qq群怎么優(yōu)化排名靠前
  • 甘肅省城鄉(xiāng)住房建設(shè)廳網(wǎng)站首頁快速排名點擊工具
  • 做網(wǎng)站的策劃需要做什么seo免費軟件
  • 可信網(wǎng)站辦理今天疫情最新消息
  • 護(hù)膚品網(wǎng)站建設(shè)前的行業(yè)分析營銷軟文怎么寫
  • 網(wǎng)易企業(yè)郵箱怎么發(fā)送文件seo網(wǎng)絡(luò)營銷技巧
  • 唐山企業(yè)建網(wǎng)站山東seo推廣公司
  • 旅游攻略網(wǎng)站開發(fā)龍崗網(wǎng)站設(shè)計
  • 鎮(zhèn)江門戶網(wǎng)站是哪個百度精準(zhǔn)引流推廣
  • 個人設(shè)計網(wǎng)站模板競價托管 微競價
  • 怎么做網(wǎng)站制作網(wǎng)絡(luò)營銷競價推廣