本篇文章帶給大家的內容是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中文網其他相關文章!