<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JAVA—咖啡館

    ——歡迎訪問rogerfan的博客,常來《JAVA——咖啡館》坐坐,喝杯濃香的咖啡,彼此探討一下JAVA技術,交流工作經驗,分享JAVA帶來的快樂!本網站部分轉載文章,如果有版權問題請與我聯系。

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      447 Posts :: 145 Stories :: 368 Comments :: 0 Trackbacks
    OSCache安裝與配置
    2007年06月11日 星期一 21:56

    一。簡介    

          OSCacheOpenSymphony組織提供的一個J2EE架構中Web應用層的緩存技術實現組件,它的出現解決了我們面臨的問題。 OSCache目前最新的穩定版本是2.3.2,本文中的例子都是基于這個版本的,如果大家運行例子的過程中發生問題,請首先確認是否采用了正確的軟件版本。

    二。安裝

    1. 下載、解壓縮OSCache

       請到OSCache的主頁http://www.opensymphony.com/oscache/download.action下載Oscache的最新版本,作者下載的是OSCache的最新穩定版本2.3.2

       將下載后的。Zip文件解壓縮到c:\oscache(后面的章節中將使用%OSCache_Home%來表示這個目錄)目錄下

    2. 新建立一個web應用

    3. 將主要組件%OSCache_Home%\oscache.jar放入WEB-INF\lib目錄

    4. commons-logging.jarcommons-collections.jar的處理

    • OSCache組件用Jakarta Commons Logging來處理日志信息,所以需要commons-logging.jar的支持,請將%OSCache_Home%\lib\core\commons-logging.jar放入classpath(通常意味著將這個文件放入WEB-INF\lib目錄)
    • 如果使用JDK1.3,請將%OSCache_Home%\lib\core\commons-collections.jar放入classpath,如果使用JDK1.4或者以上版本,則不需要了

    5. oscache.propertiesoscache.tld放入WEB-INF\class目錄

    • %OSCache_Home%\oscache.properties包含了對OSCache運行特征值的設置信息
    • %OSCache_Home%\oscache.tld包含了OSCache提供的標簽庫的定義內容

    6. 修改web.xml文件

    web.xml文件中增加下面的內容,增加對OSCache提供的taglib的支持:

    <taglib>
    <taglib-uri>oscache</taglib-uri>
    <taglib-location>/WEB-INF/classes/ oscache.tld</taglib-location>
    </taglib> 
    三。配置
    Configuration:配置oscache.properties 
    1、cache.memory:
    true 或者 false。默認為true
    不使用內存緩存而使用硬盤緩存是很愚蠢的事情。
    2、cache.capacity
    緩存object的最大數量值。默認是不限制,cache不會移走任何緩存內容。負數被當作不限制。
    3、cache.algorithm
    運算規則。為了使用規則,cache的size必須是指定的。
    如果cache的size不指定的話,法則將不會限制緩存對象的大小。
    如果你指定了cache的size,但不指定algorithm,那它會默認使用:com.opensymphony.oscache.base.algorithm.LRUCache
    有下面三種規則:
    com.opensymphony.oscache.base.algorithm.LRUCache-last in first out,最遲插入的最先調用。默認值。
    com.opensymphony.oscache.base.algorithm.FIFOCache -first int first out。
    com.opensymphony.oscache.base.algorithm.UnlimitedCache -cache中的內容將永遠不會被丟棄。
    如果cache.capacity不指定值的話,它將被設為默認。
    4、cache.blocking
    是否同步化。true 或者 false。一般設為true,避免讀取臟數據。
    5。cache.unlimited.disk
    指定硬盤緩存是否要作限制。默認值為false。false的狀況下,disk cache capacity 將和cache.capacity的值相同。
    6、cache.persistence.class
    指定類是被持久化的類。class必須實現PersistenceListener接口。
    作為硬盤持久,可以實現com.opensymphony.oscache.plugins.diskpersistence.HashDiskPersistenceListener接口。
    它把class的toString()輸出的hash值作為文件的名稱。如果你要把文件名易讀(自己設定),DiskPersistenceListener 的父類也
    能使用,但其可能有非法字符或者過長的名字。
    注意:HashDiskPersistenceListener 和 DiskPersistenceListener 需要設定硬盤路徑:cache.path
    7、cache.path
    指定硬盤緩存的路徑。目錄如果不存在將被建立。同時注意oscache應該要有權限寫文件系統。
    cache.path=c:\\myapp\\cache
    or *ix:
    cache.path=/opt/myapp/cache
    8、cache.persistence.overflow.only (NEW! Since 2.1)
    指定是否只有在內存不足的情況下才使用硬盤緩存。
    默認值false。但推薦是true如果內存cache被允許的話。這個屬性徹底的改變了cache的行為,使得persisted cache
    和memory完全不同。
    9、cache.event.listeners
    用逗號分離的class名列表。每個class必須實現以下接口之一,或者幾個
    CacheEntryEventListener:接收cache add/update/flush and remove事件
    CacheMapAccessEventListener :接收cache訪問事件。這個可以讓你跟蹤cache怎么工作。
    默認是不配置任何class的。當然你可以使用一下的class:
    com.opensymphony.oscache.plugins.clustersupport.BroadcastingCacheEventListener -分布式的監聽器。可以廣播到局域網內的其他cache實例。
    com.opensymphony.oscache.extra.CacheEntryEventListenerImpl -一個簡單的監聽器。在cache的生命周期中記錄count of 所有entry的事件。
    com.opensymphony.oscache.extra.CacheMapAccessEventListenerImpl -記錄count of cache map events(cache hits,misses and state hits).
    10、cache.key
    This is the key that will be used by the ServletCacheAdministrator
    (and hence the custom tags) to store the cache object in the application and session scope.
    The default value when this property is not specified is "__oscache_cache". If you want to access this default value in your code, it is available as com.opensymphony.oscache.base.Const.DEFAULT_CACHE_KEY.
    11、cache.use.host.domain.in.key
    If your server is configured with multiple hosts, you may wish to add host name information to automatically generated cache keys. If so, set this property to true. The default value is false.
    12、Additional Properties
    In additon to the above basic options, any other properties that are specified in this file will still be loaded and can be made available to your event handlers. For example, the JavaGroupsBroadcastingListener supports the following additional properties:
    13、cache.cluster.multicast.ip
    The multicast IP to use for this cache cluster. Defaults to 231.12.21.132.
    14、cache.cluster.properties
    Specifies additional configuration options for the clustering. The default setting is

    UDP(mcast_addr=231.12.21.132;mcast_port=45566;ip_ttl=32;\
    mcast_send_buf_size=150000;mcast_recv_buf_size=80000):\
    PING(timeout=2000;num_initial_members=3):\
    MERGE2(min_interval=5000;max_interval=10000):\
    FD_SOCK:VERIFY_SUSPECT(timeout=1500):\
    pbcast.NAKACK(gc_lag=50;retransmit_timeout=300,600,1200,2400,4800;max_xmit_size=8192):\
    UNICAST(timeout=300,600,1200,2400):\
    pbcast.STABLE(desired_avg_gossip=20000):\
    FRAG(frag_size=8096;down_thread=false;up_thread=false):\
    pbcast.GMS(join_timeout=5000;join_retry_timeout=2000;shun=false;print_local_addr=true)
    posted on 2009-11-17 14:34 rogerfan 閱讀(183) 評論(0)  編輯  收藏 所屬分類: 【開源技術】
    主站蜘蛛池模板: 亚洲精品人成在线观看| 亚洲日韩在线观看免费视频| 亚洲va无码手机在线电影| 国产一二三四区乱码免费| 亚洲国产成人五月综合网| 国产成人精品免费大全| 亚洲精品网站在线观看不卡无广告| 亚洲heyzo专区无码综合| 日本无卡码免费一区二区三区| 亚洲精品国产av成拍色拍| 日本免费中文字幕在线看| 国产AV无码专区亚洲AV琪琪| mm1313亚洲精品国产| 中文无码日韩欧免费视频| 久久亚洲综合色一区二区三区| 亚洲第一男人天堂| 皇色在线免费视频| 亚洲无av在线中文字幕| 久久青草免费91线频观看不卡| 亚洲美免无码中文字幕在线| 黄床大片免费30分钟国产精品| 亚洲中文字幕无码久久2017| 日本高清免费观看| 国产成人精品亚洲日本在线| 国产免费观看a大片的网站| 色老头综合免费视频| 女人18毛片特级一级免费视频| 色欲色欲天天天www亚洲伊| 亚洲国产精品一区二区三区久久| 日韩免费高清播放器| 91午夜精品亚洲一区二区三区| 日日操夜夜操免费视频| 少妇性饥渴无码A区免费| 麻豆狠色伊人亚洲综合网站| 又黄又爽的视频免费看| 免费一级毛片在线播放视频| 亚洲日韩一区二区一无码| 亚洲精品高清一二区久久| 亚洲免费网站在线观看| 国产成人亚洲午夜电影| 亚洲欧洲免费视频|