首頁  >  文章  >  类库下载  >  tomcat叢集是什麼? tomcat集群的介紹

tomcat叢集是什麼? tomcat集群的介紹

青灯夜游
青灯夜游轉載
2018-10-27 17:59:416133瀏覽

本篇文章帶給大家的內容是tomcat集群是什麼? tomcat集群的介紹。有一定的參考價值,有需要的朋友可以參考一下,希望對你們有幫助。

什麼是tomcat叢集?

利用nginx對請求進行分流,將請求分配給不同的tomcat去處理,減少每個tomcat的負載量,提高伺服器的回應速度。

目標

實現高效能負載平衡的tomcat叢集。

工具

nginx-1.13.10

apache-tomcat-7.0.81

實作步驟

1、下載nginx。

2、解壓縮兩個tomcat,分別命名為apache-tomcat-7.0.81-1和apache-tomcat-7.0.81-2。

3、修改兩個tomcat的啟動端口,分別為8080和8181。

4.修改兩個tomcat預設的index.jsp頁面,用以區分不同的tomcat。

5.同時啟動兩個tomcat,存取測試。

6.設定nginx,開啟nginx-1.13.10/conf/nginx.conf。

進行如下設定:

worker_processes  1;   #工作进程的个数,一般与计算机的cpu核数一致

events {
    worker_connections  1024;   #单个进程最大连接数(最大连接数=连接数*进程数)
}


http {
    include       mime.types;   #文件扩展名与文件类型映射表
    default_type  application/octet-stream;   #默认文件类型

    sendfile        on;   #开启高效文件传输模式,普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off。

    keepalive_timeout  65;   #长连接超时时间,单位是秒

    gzip  on;   #启用Gizp压缩

    #tomcat集群
    upstream  myapp {   #tomcat集群名称 
        server    localhost:8080;   #tomcat1配置
        server    localhost:8181;   #tomcat2配置
    }   

    #nginx的配置
    server {
        listen       9090;   #监听端口,默认80
        server_name  localhost;   #当前nginx域名

        location / {
            proxy_pass http://myapp;
            proxy_redirect default;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

核心設定:

#7.dos指令啟動nginx。

8.測試,訪問http://localhost:9090。

至此,我們利用nginx已經實作了負載平衡的tomcat叢集。

nginx負載平衡策略:

1、輪詢(預設)

每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器down掉,能自動剔除。 

upstream backserver { 
server 192.168.0.14; 
server 192.168.0.15; 
}

2、指定權重

指定輪詢幾率,weight和存取比率成正比,用於後端伺服器效能不均的情況。 

upstream backserver { 
server 192.168.0.14 weight=10; 
server 192.168.0.15 weight=10; 
}

3、IP綁定 ip_hash

每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問一個後端伺服器,可以解決session的問題。 

upstream backserver { 
ip_hash; 
server 192.168.0.14:88; 
server 192.168.0.15:80; 
}

4、fair(第三方)

按後端伺服器的回應時間來分配請求,回應時間短的優先分配。

upstream backserver { 
server server1; 
server server2; 
fair; 
}

5、url_hash(第三方)

按存取url的hash結果來分配請求,使每個url定向到同一個後端伺服器,後端伺服器為快取時比較有效。 

upstream backserver { 
server squid1:3128; 
server squid2:3128; 
hash $request_uri; 
hash_method crc32; 
}

以上是tomcat叢集是什麼? tomcat集群的介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除