The following properties apply to the JDBC Disk Cache plugin.
Property | Description | Required | Default Value |
---|---|---|---|
MaxPurgatorySize | The maximum number of items allowed in the queue of items to be written to disk. | N | 5000 |
url | The database url. The database name will be added to this value to create the full database url. | Y | |
database | This is appended to the url. | Y | |
driverClassName | The class name of the driver to talk to your database. | Y | |
tableName | The name of the table. | N | JCS_STORE |
testBeforeInsert | Should the disk cache do a select before trying to insert new element on update, or should it try to insert and handle the error. | N | true |
maxActive | This sets the maximum number of connections allowed. | Y | |
allowRemoveAll | Should the disk cache honor remove all (i.e. clear) requests. You might set this to false to prevent someone from accidentally clearing out an entire database. | N | true |
UseDiskShrinker | Should the disk cache try to delete expired items from the database. | N | true |
ShrinkerIntervalSeconds | How often should the disk shrinker run. | N | 300 |
############################################################## ################## AUXILIARY CACHES AVAILABLE ################ # JDBC disk cache jcs.auxiliary.JDBC=org.apache.jcs.auxiliary.disk.jdbc.JDBCDiskCacheFactory jcs.auxiliary.JDBC.attributes=org.apache.jcs.auxiliary.disk.jdbc.JDBCDiskCacheAttributes jcs.auxiliary.JDBC.attributes.userName=sa jcs.auxiliary.JDBC.attributes.password= jcs.auxiliary.JDBC.attributes.url=jdbc:hsqldb: jcs.auxiliary.JDBC.attributes.database=target/cache_hsql_db jcs.auxiliary.JDBC.attributes.driverClassName=org.hsqldb.jdbcDriver jcs.auxiliary.JDBC.attributes.tableName=JCS_STORE2 jcs.auxiliary.JDBC.attributes.testBeforeInsert=false jcs.auxiliary.JDBC.attributes.maxActive=15 jcs.auxiliary.JDBC.attributes.allowRemoveAll=true jcs.auxiliary.JDBC.attributes.MaxPurgatorySize=10000000 jcs.auxiliary.JDBC.attributes.UseDiskShrinker=true jcs.auxiliary.JDBC.attributes.ShrinkerIntervalSeconds=300
Property | Description | Required | Default Value |
---|---|---|---|
EventQueueType | This should be either SINGLE or POOLED. By default the single style pool is used. The single style pool uses a single thread per event queue. That thread is killed whenever the queue is inactive for 30 seconds. Since the disk cache uses an event queue for every region, if you have many regions and they are all active, you will be using many threads. To limit the number of threads, you can configure the disk cache to use the pooled event queue. Using more threads than regions will not add any benefit for the indexed disk cache, since only one thread can read or write at a time for a single region. | N | SINGLE |
EventQueuePoolName | This is the name of the pool to use. It is required if you choose the POOLED event queue type, otherwise it is ignored. | Y | n/a |
############################################################## ################## AUXILIARY CACHES AVAILABLE ################ # JDBC disk cache jcs.auxiliary.JDBC=org.apache.jcs.auxiliary.disk.jdbc.JDBCDiskCacheFactory jcs.auxiliary.JDBC.attributes=org.apache.jcs.auxiliary.disk.jdbc.JDBCDiskCacheAttributes jcs.auxiliary.JDBC.attributes.userName=sa jcs.auxiliary.JDBC.attributes.password= jcs.auxiliary.JDBC.attributes.url=jdbc:hsqldb: jcs.auxiliary.JDBC.attributes.database=target/cache_hsql_db jcs.auxiliary.JDBC.attributes.driverClassName=org.hsqldb.jdbcDriver jcs.auxiliary.JDBC.attributes.tableName=JCS_STORE2 jcs.auxiliary.JDBC.attributes.testBeforeInsert=false jcs.auxiliary.JDBC.attributes.maxActive=15 jcs.auxiliary.JDBC.attributes.allowRemoveAll=true jcs.auxiliary.JDBC.attributes.MaxPurgatorySize=10000000 jcs.auxiliary.JDBC.attributes.UseDiskShrinker=true jcs.auxiliary.JDBC.attributes.ShrinkerIntervalSeconds=300 jcs.auxiliary.JDBC.attributes.EventQueueType=POOLED jcs.auxiliary.JDBC.attributes.EventQueuePoolName=disk_cache_event_queueue ############################################################## ################## OPTIONAL THREAD POOL CONFIGURATION ######### # Disk Cache pool thread_pool.disk_cache_event_queue.useBoundary=false thread_pool.disk_cache_event_queue.boundarySize=500 thread_pool.disk_cache_event_queue.maximumPoolSize=15 thread_pool.disk_cache_event_queue.minimumPoolSize=10 thread_pool.disk_cache_event_queue.keepAliveTime=3500 thread_pool.disk_cache_event_queue.whenBlockedPolicy=RUN thread_pool.disk_cache_event_queue.startUpSize=10