亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Tomcat 5集群中的SESSION復制二

2019-11-18 13:04:32
字體:
來源:轉載
供稿:網友

  集群安裝
  
  為了在TOMCAT5容器中session復制可用,必須完成以下步驟:
  
  ●    為了集群能夠工作,你必須使用你系統上的多點傳送可使用
  ●    為了有些使用SESSION復制,所有TOMCAT例程必須同樣配置。這意味著WEB應用程序必須統一的部署在集群中的每臺服務器上。這些配置同樣簡化了集群治理,維護和發現維修故障的任務。
  ●    在server.xml未注釋的Cluster 和Valve (ReplicationValve) 元素。起用server.xm中的CLUSTER元素意味著所有WEB CONTEXT的SESSION治理器將會改變。因此 當運行一個集群的時候,你應該確保只有一個需要被集成WEB應用程序并且移除其他的。
  ●    假如服務器例程運行在同樣的機器上,應該確保每個例程的tcpListenPort屬性是一致的。
  ●    確保web.xml有distributable屬性
  ●    所有的SESSION屬性必須實現java.io.Serializable接口
  
  范例集群安裝有兩個TOMCAT例程和一個負載平衡用于分配服務器間的請求。所有三個服務器都運行在一個單獨的機器上,以下表格列出了集群和負載平衡上的配置參數。
  
  
 Tomcat 5集群中的SESSION復制二(圖一)

  
  編輯注解:以上Web App Directory中的值為了適應排版而換行了。在你的部署中,每個值應該是單一而完整的一行
  
  注重:不要設置tcpListenAddress為127.0.0.1,因為127用于回環地址,在SESSION復制期間可能會出現問題。
  
  負載平衡器安裝
  
  TOMCAT服務器不提供失效轉移能力用于當一個集群接點失效的時候重定向任何引入的請求到下一個可用的服務器上。所以我使用一個分開的負載平衡器去治理WEB請求的負載平衡。有一些流行的負載平衡器例如Apache/mod_jk, Balance, 和 Pen。我在范例集群安裝中使用Pen作為負載平衡器。
  
  Pen是一個簡單的,基于TCP協議,例如HTTP或者SMTP的負載平衡器。他答應多個服務器對外表現為一個服務器,并且自動檢測關閉的服務器,在可用的服務器間分配客戶斷。他提供了負載平衡和失效轉移能力。Pen易于安裝以及配置,非常輕易使用和運行在Windows和UNIX操做系統上。范例配置使用round-robin負載平衡算法用于在集群節點間分配負載平衡
  
  運行負載平衡器的命令如下:
  pen -r -a -f -d localhost:8080 192.168.0.10:9080 192.168.0.20:10080
  
  以下是用于啟動負載平衡器的每個命令行參數的解釋
  
  -r: 使用round robin負載平衡
  -a: 打印往返發送的ASCII格式的數據
  -f: 保持在前臺
  -d: 起用DEBUG模式
  
  想要知道更多用于啟動PEN的參數細節,請訪問PEN網站
  
  圖表1展示了兩個集群節點,一個負載平衡器,儀器層,以及測試客戶端的拓撲圖
  
  
 Tomcat 5集群中的SESSION復制二(圖二)
點擊查看大圖

  Figure 1. Cluster setup diagram

  
  測試安裝
  
  我創建了一個叫做clusterapp的WEB應用程序來驗證集群安裝以及SESSION復制原理。為了測試真實的SESSION復制,我寫了一個叫做SessionReplicationClient的簡單JAVA客戶端用語測試從一個服務器拷貝SESSION數據到另外一個服務器的需要的時間。這個客戶端使用Jakarta Commons HttpClient況架去創建和操作HTTP SESSION并且調用TOMCAT服務器上的一個SERVLET。用于測試SESSION復制的機器軟硬件配置如下:
  
  ●    CPU: HP Pavilion Pentium III 800MHz
  ●    Memory: 512MB RAM
  ●    Hard disk: 40GB
  ●    Operating system: windows 2000 server
  ●    JDK version: 1.4.2_05 (Note: JDK 1.4 or later version is required to use clustering and session replication)
  ●    Tomcat version: 5.0.28
  ●    Tools: Pen, Log4J, Eclipse, Commons HttpClient
  
  當一個復制客戶端程序運行的時候,他首先設置一個作用指令用于這樣操縱SESSION(例如,添加一個新的屬性到SESSION,從SESSION中移除一個已存在的屬性,或則讓一個SESSION失效)。然后客戶端通過在Commons HttpClient框架使用HttpClient和PostMethod類調用ReplicationServlet?;谶@些SESSION命令,servlet生成一個新的SEESION或者修改一個已經存在的SESSION并且轉到一個WEB頁面中瞻示SESSION細節。假如在治理SESSION中有任何錯誤,則轉到一個錯誤頁面。我寫了一個定制的SESSION監聽類(ClusterAppSessionListener)用于跟蹤SESSION治理的細節,例如新SESSION的創建,修改或則終止已經存在的SEESION。
  
  圖表2展現了SESSION復制流程
  
  
 Tomcat 5集群中的SESSION復制二(圖三)
點擊查看大圖

  Figure 2. Session replication sequence diagram

  
  服務器上的SESSION狀態通過每個WEB請求的COOKIE跟蹤,所以為了保持使用同樣的SESSION,從客戶端發出的請求URL必須一樣。另外,在每次請求都創建一個新的HTTP SESSION。我使用了兩種類型的,基于添加到SESSION中的屬性類別的測試方法去測試復制。
  
  第一個類別有100個輕量對象(每個1K)添加到SESSION。第2個類別中,我添加了一個單一的大對象(100K)去比較基于SESSION屬性大小的SESSION復制所花費的時間
  
  以下列出了SessionReplicationClient的測試規格:
  
  ●    客戶端線程數:2
  ●    旋環次數:1000
  ●    請求延遲:1000 milliseconds
  ●    測試范例數:1000
  ●    SESSION屬性:?。?00個1K大小的對象)或則大(一個100K大小的對象)
  
  使用指定參數運行測試客戶端的命令如下:
  
  java -Dlog4j.configuration=log4j.xml com.clusterapp.test.SessionReplicationClient 2 192.168.0.10 9080 1000 1000 lite
  
  測試環境包括使用不同的SESSION治理器(SimpleTcPReplicationManager 或則 DeltaManager)和SESSION復制模式(同步,異步,池),以下表格列出了在TOMCAT集群中的一系列測試環境:
  
  
 Tomcat 5集群中的SESSION復制二(圖四)

  
  想要把復制模式從池該到同步或異步,只要在server.xml文件中的SENDER標志中修改replicationMode屬性值就可以了。同樣,要改變SESSION治理器的類型,只要改變Cluster元素的managerClassName屬性。
  
  以下參數用于比較反應時間和SESSION復制的效率:
  
  ●    平均反映時間(ms)
  ●    平均請求時間(ms)
  ●    集群開銷時間(ms)
  ●    復制時間(ms)
  ●    比率(bytes/ms)
  ●    比率(bytes/request)
  
  測試結果
  
  delta治理器和池復制模式相結合使用對與SESSION復制效率是最好的標準。同樣,保持SESSION大小較小可以比復制大SESSION快2到3倍。
  
  
 Tomcat 5集群中的SESSION復制二(圖五)

  
  復制治理器
  
  DeltaManager在SESSION復制方面更有效,因為他僅僅處理SESSION deltas而不是全部的SESSION數據。使用DeltaManager,與使用簡單復制治理器比較,SESSION復制效率會提高30%(大SESSION)到50%(小SESSION)。
  
  復制模式
  
  與其他兩個選項(同步和異步)比較,池復制模式復制SESSION花費更好的時間。在一個復制時間內,池選項幾乎是同意選項的 4倍快。但是在反應時間和集群開銷時間方面,池和同步模式幾乎一樣,因為在同步模式里,集群在返回前不用等待SESSIONG完成復制
  
  綜述
  
  基于SESSION復制測試的結果,我們得出結論:應該在任何可能時候使用DeltaManager。因為復制SESSION數據的開銷是意義重大的,必須確保沒有在SESSION中存儲太多的數據同樣,添加到SESSION中的屬性大小也是影響到SESSION復制時間的另一個因素。當我運行測試在SESSION存儲大對象(100K)的時候,與在SESSION中存儲小對象(1K)相比較,復制時間非常高。想要最小化SESSION復制開銷最好的方法是避免調用session.setAttribute()以及把數據存儲在請求對象中而不是SESSION中。這樣相對更好因為當WEB請求完成的時候請求屬性會被重置。同樣,假如沒有商業方面的原因要在服務器存儲數據,我們可以以COOKIES的形式在客戶端存儲數據。這種方法完全避免了使用任何SESSIOIN的需要。
  
  一種最小化SESSION復制時間開銷的方法是限制集群中到兩個或則三個服務器上的服務器例程數目。這樣當第一個服務器失敗的時候第一個服務器上的SESSION數據已經被拷貝到第二個服務器上。為了保持網絡暢通,集群可以分割成小塊的組,每個組包括兩個或則三個服務器例程。記住,集群中的服務器越多,SESSION復制花費的時間也越多。目前TOMCAT5不支持首要/次要復制的概念。在以后發布的版本中將會有,這樣我們將可以在一個或則兩個備份服務器上存儲SESSION。擁有這個特性的話,TOMCAT將會為在集群環境中運行WEB服務器提供更全面的SESSION復制方法。
  
  在未來TOMCAT將會支持的一些屬性:
  
  ●    擁有在SESSION中存在非序列化的屬性的能力,集群將會忽略該屬性
  ●    擁有復制context屬性以及非序列化的相關數據的能力,例如JDBC連接池和對象CACHES。
  
  這些特性將會使在TOMCAT集群中的SESSION復制更強壯和靈活。
  
  I want to thank Filip Hanik for his valuable suggestions and feedback on the replication modes, session replication web application setup, and the test client sections of this article.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品嫩草影院一区二区| 午夜精品久久久久久久男人的天堂| 高清欧美性猛交| 91超碰中文字幕久久精品| 亚洲精品国产精品久久清纯直播| 国产精品一区二区久久国产| 欧美在线中文字幕| 日韩一区二区欧美| 久久久久亚洲精品| 97在线视频国产| 国产91精品久久久| 欧美在线观看www| 久久伊人91精品综合网站| 国产精品白嫩初高中害羞小美女| 中文字幕日韩欧美精品在线观看| www.亚洲男人天堂| 精品亚洲一区二区三区四区五区| 国产乱人伦真实精品视频| 中文字幕一区电影| 欧美激情久久久久久| 亚洲免费福利视频| 91久热免费在线视频| 色噜噜狠狠色综合网图区| 456国产精品| 成人a免费视频| 久久99精品久久久久久青青91| 亚洲精品中文字幕有码专区| 中文字幕免费国产精品| 亚洲精品按摩视频| 日韩中文字幕免费看| 欧美一级在线播放| 国产成人亚洲综合91精品| 成人精品视频久久久久| 国产成人精品国内自产拍免费看| 九九久久精品一区| 亚洲欧美另类人妖| 亚洲成人1234| 成人观看高清在线观看免费| 中文字幕一区日韩电影| 欧美日韩国产在线看| 91久久嫩草影院一区二区| 成人精品网站在线观看| 色综合久久精品亚洲国产| 欧美丰满片xxx777| 亚洲变态欧美另类捆绑| 啪一啪鲁一鲁2019在线视频| 91精品国产91久久久久久吃药| 欧美午夜视频一区二区| 国产精品igao视频| 亚洲欧洲一区二区三区在线观看| 欧美怡春院一区二区三区| 国产精品国产三级国产aⅴ浪潮| 精品亚洲一区二区三区四区五区| 日韩a**中文字幕| 久久久视频在线| 日韩成人激情在线| 成人免费网站在线看| 欧美激情成人在线视频| 亚洲资源在线看| 成人在线视频福利| 欧美日韩亚洲视频一区| 欧美视频一区二区三区…| 91欧美精品成人综合在线观看| 91精品久久久久久久久久久久久久| 久久国产精品偷| 欧美精品久久一区二区| 国产在线视频欧美| 亚洲日韩中文字幕在线播放| 日韩在线视频观看正片免费网站| 一区二区三区久久精品| 精品一区电影国产| 伊人一区二区三区久久精品| 亚洲成人激情在线观看| 亚洲精品视频播放| 亚洲专区中文字幕| 神马国产精品影院av| 最近2019中文字幕第三页视频| 日韩中文在线观看| 欧美有码在线观看| 在线观看欧美视频| 一区二区成人av| 欧美成aaa人片免费看| 亚洲综合自拍一区| 亚洲欧美制服第一页| 欧美激情综合亚洲一二区| 亚洲自拍高清视频网站| 懂色av影视一区二区三区| 欧美日韩国产精品| 这里只有精品视频| 日本一区二区不卡| 国产亚洲精品成人av久久ww| 国产精品香蕉国产| 欧美一区二区三区免费视| 亚洲free嫩bbb| 国产日韩欧美中文| 国产精品久久久久9999| 欧美成人午夜视频| 日韩精品中文字幕在线| 久久久国产精品亚洲一区| 日韩大片免费观看视频播放| 欧美做受高潮电影o| 国产免费一区二区三区香蕉精| 精品视频久久久久久| 久久精品最新地址| 精品高清美女精品国产区| 51午夜精品视频| 成人性教育视频在线观看| 成人精品久久一区二区三区| 成人网在线观看| 91久久精品国产91性色| 欧美日韩亚洲国产一区| 亚洲激情免费观看| 日韩美女视频中文字幕| 91黑丝在线观看| 福利视频第一区| 日韩av综合网| 国产精品h片在线播放| 亚州欧美日韩中文视频| 午夜精品久久久久久99热软件| 992tv成人免费影院| 亚洲精品98久久久久久中文字幕| 亚洲一区av在线播放| 538国产精品视频一区二区| 亚洲国产99精品国自产| 色婷婷av一区二区三区久久| 欧美日韩国产限制| 国产精品成人国产乱一区| 久久久国产影院| 97久久精品国产| 日本久久中文字幕| 欧美激情精品久久久久久| 91地址最新发布| 成人在线视频网| 国产精品白丝jk喷水视频一区| 91av在线视频观看| 日韩精品中文在线观看| 国产999在线| 伊人成人开心激情综合网| 青青草99啪国产免费| 国产日本欧美视频| 一区二区欧美激情| 日韩欧美在线视频免费观看| 亚洲欧美另类人妖| 国产成人短视频| 性色av一区二区三区免费| 国产精品人成电影| 久久欧美在线电影| 日韩中文字幕网站| 色av中文字幕一区| 日韩暖暖在线视频| 国产成人精品av| 久久久久久有精品国产| 日本三级韩国三级久久| 91亚洲国产成人久久精品网站| 91精品国产91久久久久福利| 日韩美女视频免费看| 国产精彩精品视频| 国产欧美精品xxxx另类| 国产精品人成电影在线观看| 久久免费精品日本久久中文字幕| 日韩精品久久久久久久玫瑰园| 久久久av网站| 97在线视频免费看| 97香蕉超级碰碰久久免费的优势|