2.1Nginx的反向代理
什么是正向代理?
1.2 使用nginx實現反向代理
Nginx只做請求的轉發,后台有多個http服務器提供服務,nginx的功能就是把請求轉發給后面的服務器,決定把請求轉發給誰。
1.2.1 安裝tomcat
在一個虛擬機上創建兩個tomcat實例,模擬多個服務器。
1.2.2 需求
通過訪問不同的域名訪問運行在不同端口的tomcat
8080.itheima.com 訪問運行8080端口的tomcat
8081.itheima.com 訪問運行8081端口的tomcat
1.2.3 域名需要配置host文件:
可以在widow中配置
C:\Windows\System32\drivers\etc
也可以使用工具配置:
1.2.4 Nginx的配置
|
如果在同一個域名下有多台服務器提供服務,此時需要nginx負載均衡。
2 負載均衡
2.1 什么是負載均衡
負載均衡 建立在現有網絡結構之上,它提供了一種廉價有效透明的方法擴展網絡設備和服務器的帶寬、增加吞吐量、加強網絡數據處理能力、提高網絡的靈活性和可用性。
負載均衡,英文名稱為Load Balance,其意思就是分攤到多個操作單元上進行執行,例如Web服務器、FTP服務器、企業關鍵應用服務器和其它關鍵任務服務器等,從而共同完成工作任務。
2.2 需求
nginx作為負載均衡服務器,用戶請求先到達nginx,再由nginx根據負載配置將請求轉發至 tomcat服務器。
nginx負載均衡服務器:192.168.25.141
tomcat1服務器:192.168.25.141:8080
tomcat2服務器:192.168.25.141:8081
2.3 配置nginx的負載均衡
2.4 配置負載均衡的權重
節點說明: 在http節點里添加:
#定義負載均衡設備的 Ip及設備狀態 upstream myServer {
server 127.0.0.1:9090 down; server 127.0.0.1:8080 weight=2; server 127.0.0.1:6060; server 127.0.0.1:7070 backup; }
在需要使用負載的Server節點下添加
proxy_pass http://myServer;
upstream 每個設備的狀態:
down 表示單前的server暫時不參與負載 weight 默認為1.weight越大,負載的權重就越大。 max_fails :允許請求失敗的次數默認為1.當超過最大次數時,返回proxy_next_upstream 模塊定義的錯誤 fail_timeout:max_fails 次失敗后,暫停的時間。 backup: 其它所有的非backup機器down或者忙的時候,請求backup機器。所以這台機器壓力會最輕。 |