熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java高級技術 >> 正文

Java程序性能優化-負載均衡(3)

2013-11-23 19:59:51  來源: Java高級技術 

    負載均衡(

  通過這個實驗可以看到的Web服務器通過Terracotta服務器共享了同一份緩存在本例中Web應用的緩存配置如以下代碼所示

  <?xml version= encoding=UTF?>

  <ehcache name=ColorCache>

  <defaultCache

  maxElementsInMemory=

  eternal=false

  timeToIdleSeconds=

  timeToLiveSeconds=

  overflowToDisk=true

  diskSpoolBufferSizeMB=

  maxElementsOnDisk=

  diskPersistent=false

  diskExpiryThreadIntervalSeconds=

  memoryStoreEvictionPolicy=LRU/>

  <cache name=colors

  maxElementsInMemory=

  maxElementsOnDisk=

  eternal=false

  timeToIdleSeconds=

  timeToLiveSeconds=

  memoryStoreEvictionPolicy=LFU>

  <terracotta/>

  </cache>

  <terracottaConfig url=localhost:/>

  </ehcache>

  該緩存是前文中介紹的EhCache緩存的分布式形態在配置文件最後指定了緩存服務器地址在程序中使用分布式緩存的方法也很簡單與前文中介紹的EhCache幾乎相同如下代碼片段

  private static final CacheManager  cacheManager  = new CacheManager()

  private Ehcache getCache() {

  return cacheManagergetEhcache(colors   //與配置文件中的名稱一樣

  }

  public Color getColor(String name) {

  Element elem = getCache()get(name)        //從分布式緩存中獲取數據

  if (elem == null) {                         //若不存在則新建顏色

  Color color = colorDatabasegetColor(name)

  if (color == null) { return null; }

  getCache()put(elem = new Element(name color))  //將顏色放入緩存

  }

  return (Color) elemgetValue()

  }

  Terracotta的另一個重要的應用是session共享在Terracotta安裝目錄的sessions\samples\cart子文件夾內有session共享的示例與colorcache示例一樣首先需要啟動Terracotta服務器接著啟動兩個Web應用程序分別運行在端口兩個Web服務器在各自獨立的JVM虛擬機中運行彼此獨立

       返回目錄Java程序性能優化讓你的Java程序更快更穩定

  編輯推薦

       Java程序設計培訓視頻教程

       JEE高級框架實戰培訓視頻教程

       JME移動開發實戰教學視頻

  Visual C++音頻/視頻技術開發與實戰

  Oracle索引技術

  ORACLEG數據庫開發優化指南


From:http://tw.wingwit.com/Article/program/Java/gj/201311/27790.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.