如何進(jìn)行Tomcat官方的集群配置說明

本篇文章給大家分享的是有關(guān)如何進(jìn)行Tomcat官方的集群配置說明,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供壺關(guān)企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站制作、成都網(wǎng)站制作H5頁面制作、小程序制作等業(yè)務(wù)。10年已為壺關(guān)眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。

我們都知道,為了應(yīng)對大量的請求,單臺(tái)的Tomcat不能滿足的時(shí)候,需要采取一系列的措施,例如分流、集群等。

進(jìn)行Tomcat集群的時(shí)候,最需要關(guān)注和實(shí)現(xiàn)的,是多個(gè)Tomcat實(shí)例間的Session數(shù)據(jù)的共享,這樣在節(jié)點(diǎn)crash的時(shí)候,才能使用其他節(jié)點(diǎn)響應(yīng)。

關(guān)于集群,Tomcat的commiter和主要維護(hù)人Mark Thmoas在ApacheCon上做

Cluster的分享時(shí)這樣描述:

什么時(shí)候需要使用Cluster呢?

理論上,永遠(yuǎn)不要。

為什么呢,Thomas是這樣說的

  • Adds configuration complexity

  • Requires additional processing

  • Debugging is lot harder

而你可能真正需要的是

  • Load-balancing plus sticky sessions

  • If a node fails, sessions will be lost

集群應(yīng)該是最后一個(gè)選擇。

我們前面的文章寫過通過redis/Memcached來存儲(chǔ)Session實(shí)現(xiàn)多實(shí)例間的Session數(shù)據(jù)共享的原理及步驟。(詳解集群內(nèi)Session高可用的實(shí)現(xiàn)原理 )

其實(shí)Tomcat官方提供了內(nèi)置的Cluster功能,無須第三方的插件支持。

Tomcat官方的集群(Cluster)配置說明

整個(gè)集群的配置可以分為以下幾步:

  1. 配置每個(gè)Tomcat實(shí)例的Engine,增加jvmRoute

  2. 配置集群部署的應(yīng)用,修改其web.xml,增加<distributable/>配置。

  3. 使用Apache進(jìn)行負(fù)載均衡,同時(shí)配置Session sticky和接受請求轉(zhuǎn)發(fā)的Map path。關(guān)于Apache的配置,可以參考前面的文章

    快看Apache那個(gè)二道販子(1)

    快看Apache那個(gè)二道販子(2)

  • 修改各個(gè)Tomcat實(shí)例的Cluster配置,最簡配置為打開默認(rèn)注釋的內(nèi)容:

    <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

    這個(gè)最簡易的SimpleTcpCluster會(huì)使用內(nèi)存進(jìn)行Session數(shù)據(jù)的存儲(chǔ),并且集群間各個(gè)Tomcat實(shí)例會(huì)互相進(jìn)行數(shù)據(jù)備份。 各個(gè)實(shí)例間會(huì)通過multicast的方式進(jìn)行心跳檢測。

  • session數(shù)據(jù)的數(shù)據(jù)的傳輸是通過Tcp Connection進(jìn)行的。

    下圖為斷開一個(gè)實(shí)例連接時(shí),其它實(shí)例收到的檢查信息

  • 當(dāng)然,我們也可能對Cluster進(jìn)行各項(xiàng)屬性的定義,例如Session的Manager,multicast和數(shù)據(jù)傳遞的實(shí)現(xiàn)等,擔(dān)心Session放在內(nèi)存中的話,可以使用其它的Manager實(shí)現(xiàn)。

    Tomcat提供了三種方式的Session共享策略:

    • ?Session數(shù)據(jù)持久化,將數(shù)據(jù)保存到共享文件系統(tǒng)

    • Sesion持久化,數(shù)據(jù)保存到共享的數(shù)據(jù)庫中,數(shù)據(jù)通過JDBCStore進(jìn)行存儲(chǔ)

    • 使用內(nèi)存進(jìn)行共享,使用Tribes

    ?5. 繼續(xù)使用examples中的session進(jìn)行功能檢查,此時(shí),你會(huì)發(fā)現(xiàn)多個(gè)實(shí)例間數(shù)據(jù)可以正常共享,而且不需要其它第三方的插件支持,絕對官方的實(shí)現(xiàn)。

以上就是如何進(jìn)行Tomcat官方的集群配置說明,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

文章名稱:如何進(jìn)行Tomcat官方的集群配置說明
分享鏈接:http://muchs.cn/article20/ghjijo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航網(wǎng)站排名、網(wǎng)站內(nèi)鏈ChatGPT、品牌網(wǎng)站制作手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)