nginx之TCP反向代理


實現Nginx tcp負載均衡

Nginx在1.9.0版本開始支持tcp模式的負載均衡,在1.9.13版本開始支持udp協議的負載,udp主要用於DNS的域名解析,其配置方式和指令和http 代理類似,其基於ngx_stream_proxy_module模塊實現tcp負載,另外基於模塊ngx_stream_upstream_module實現后端服務器分組轉發、權重分配、狀態監測、調度算法等高級功能。 

nginx TCP反向代理mysql及redis

[root@app ~]# vim /apps/nginx/conf/tcp/mysql.conf stream { #定義stream;TCP模塊是和HTTP一樣的一個獨立模塊,所以不能設置在HTTP里面,設置在一個單獨的配置文件。 upstream mysql-server { #定義后端服務器 server 192.168.38.37:3306 max_fails=3 fail_timeout=30s; #定義具體server } upstream redis-server { server 192.168.38.47:6379 max_fails=3 fail_timeout=30s; } server { #定義server listen 3306; #監聽本機所有IP的3306端口 proxy_connect_timeout 30s; #連接超時時間 proxy_timeout 30s; #轉發超時時間 proxy_pass mysql-server; #轉發到具體服務器組 } server { listen 192.168.38.27:6379; #監聽在本機的192.168.38.27的6379端口 proxy_connect_timeout 30s; proxy_timeout 30s; proxy_pass redis-server; } } TCP反向代理是基於IP和端口號;寫完這個配置文件,需要在主配置文件的全局配置中添加 include /apps/nginx/conf/tcp/*.conf;這樣一行,讓nginx讀取tcp目錄下的配置文件,這個設置不要設置在http模塊中,tcp和http是兩個獨立的模塊,不要設置在一起。


免責聲明!

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



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