nginx stream模塊


node2:/etc/nginx#/usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.17.9
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC) 
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-stream

nginx從1.9.0開始,新增加了一個stream模塊,用來實現四層協議的轉發、代理或者負載均衡等。這完全就是搶HAproxy份額的節奏,鑒於nginx在7層負載均衡和web service上的成功,和nginx良好的框架,stream模塊前景一片光明。

stream 模塊編譯

stream模塊默認沒有編譯到nginx, 編譯nginx時候 ./configure –with-stream 即可


stream core 一些變量

注意:變量支持是從 nginx 1.11.2版本開始的



$binary_remote_addr
二進制格式的客戶端地址
$bytes_received
從客戶端接收到的字節數
$bytes_sent
發往客戶端的字節數
$hostname
連接域名
$msec
毫秒精度的當前時間
$nginx_version
nginx 版本
$pid
worker進程號
$protocol
通信協議(UDP or TCP)
$remote_addr
客戶端ip
$remote_port
客戶端端口
$server_addr
接受連接的服務器ip,計算此變量需要一次系統調用。所以避免系統調用,在listen指令里必須指定具體的服務器地址並且使用參數bind。
$server_port
接受連接的服務器端口
$session_time
毫秒精度的會話時間(版本1.11.4開始)
$status
會話狀態(版本1.11.4開始), 可以是一下幾個值:
200
成功
400
不能正常解析客戶端數據
403
禁止訪問
500
服務器內部錯誤
502
網關錯誤,比如上游服務器無法連接
503
服務不可用,比如由於限制連接等措施導致
$time_iso8601
ISO 8601時間格式
$time_local
普通日志格式的時間戳

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM