jacky寫于2006年廣州
花了一點時間,翻譯了OsCache的配置屬性:
E文地址:http://wiki.opensymphony.com/display/CACHE/Configuration
簡潔翻譯如下:后面部分懶得去翻譯了...哈哈
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)