【Nginx】利用nginx搭建集羣環境

  • 第①步:準備搭建環境,nginx和兩個tomcat環境。如下圖所示:

利用nginx搭建集羣環境

  • 第②步:將tomcat的端口號修改,修改文件爲${tomcat}/conf/server.xml文件;

要修改的地方有:

<!-- 第22行:Server下的port -->
<Server port="8005" shutdown="SHUTDOWN">
    <!-- 第70行:Connector下的port和redirectPort -->
    <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
    <!-- 第90行:Connector下的port和redirectPort -->
    <Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />
</Server>
  • 第③步:在nginx.conf文件中的location /添加proxy_pass來設置代理,server_jiqun配置集羣
location / {
    #root   html;
    #index  index.html;
    #proxy_pass http://localhost:8080;
    proxy_pass http://server_jiqun;
}
upstream server_jiqun{
    server 127.0.0.1:8080 weight=2;
    server 127.0.0.1:8090 weight=4;
}

上述代碼表示location代理server_jiqun集羣,location通過nginx間接訪問127.0.0.1:8080和127.0.0.1:8090兩臺服務器

session共享問題

  • 解決方案一:只能在window下好使
    • 修改兩個地方:
      • 1、修改tomcat的server.xml配置文件,在Engine標籤下加入如下內容
      • 2、修改項目的配置文件 web.xml中添加一個節點,爲web-app根節點下。
      • <distributable/>
  • 解決方案二:
    • 可以將session的id放入redis中
  • 解決方法三:
    • 保證一個ip地址永遠的訪問一臺web服務器,就不存在session共享問題了,我們可以在nginx的配置文件中
    • upstream中添加 ip_hash
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章