[英]How can I configure the disk cache jcs
我是第一次实现磁盘缓存 (jcs)。 我想配置 cache.ccf 文件以允许磁盘缓存。 我的 cache.ccf 文件具有以下配置:
jcs.region.lesson=blockDiskCache
jcs.region.lesson.cacheattributes=org.apache.commons.jcs.engine.CompositeCacheAttributes
jcs.region.lesson.cacheattributes.MaxObjects=2
jcs.region.lesson.cacheattributes.MemoryCacheName=org.apache.commons.jcs.engine.memory.lru.LRUMemoryCache
jcs.auxiliary.blockDiskCache=org.apache.commons.jcs.auxiliary.disk.block.BlockDiskCacheFactory
jcs.auxiliary.blockDiskCache.attributes=org.apache.commons.jcs.auxiliary.disk.block.BlockDis kCacheAttributes
jcs.auxiliary.blockDiskCache.attributes.DiskPath=user.home/jcs_swap
jcs.auxiliary.blockDiskCache.attributes.MaxPurgatorySize=300000
jcs.auxiliary.blockDiskCache.attributes.MaxKeySize=1000000
jcs.auxiliary.blockDiskCache.attributes.blockSizeBytes=500
jcs.auxiliary.blockDiskCache.attributes.EventQueueType=SINGLE
thread_pool.default.boundarySize=2000
thread_pool.default.maximumPoolSize=150
thread_pool.default.minimumPoolSize=4
thread_pool.default.keepAliveTime=350000
thread_pool.default.whenBlockedPolicy=RUN
thread_pool.default.startUpSize=4
thread_pool.disk_cache_event_queue.useBoundary=false
thread_pool.disk_cache_event_queue.minimumPoolSize=2
thread_pool.disk_cache_event_queue.keepAliveTime=3500
thread_pool.disk_cache_event_queue.startUpSize=10
我检查了调试并看到以下内容:第一个对象保存在缓存中。 当我保存第二个对象(内存缓存超过其最大大小)时,这个对象没有保存在磁盘中。 我不知道问题出在 jcs.auxiliary.blockDiskCache.attributes.DiskPath 属性还是其他配置中。
Can you help me, please?
Thanks :)
你的意思是 jcs.auxiliary.blockDiskCache.attributes.DiskPath= ${user.home} /jcs_swap?
您也可以尝试设置jcs.region.lesson.cacheattributes.MaxObjects=0和/或添加jcs.region.lesson.cacheattributes.DiskUsagePatternName=UPDATE以帮助调试磁盘缓存设置。 不管这些,它都应该写入磁盘。
块磁盘辅助缓存
块磁盘缓存将缓存值存储在磁盘上。 与索引磁盘缓存一样,块磁盘缓存将密钥保存在内存中。 Block Disk Cache 将值存储在一组固定大小的块中,而 Indexed Disk Cache 将项目以一个块的形式写入磁盘。
对于项目大小不同的区域,块磁盘缓存优于普通索引模型。 由于所有块的大小相同,因此回收站非常简单。 它只是一个区块编号列表。 此外,块磁盘缓存永远不需要优化。 一旦达到最大密钥数,块将被重用。
所有必要信息位于: https : //commons.apache.org/proper/commons-jcs/BlockDiskCache.html
对于块磁盘缓存,KEYS 存储在 Memory 中。 值存储在磁盘中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.