12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- [AssetCache]
- ;;
- ;; Options for FlotsamAssetCache
- ;;
- ; cache directory can be shared by multiple instances
- CacheDirectory = ./assetcache
- ; Other examples:
- ;CacheDirectory = /directory/writable/by/OpenSim/instance
- ; Log level
- ; 0 - (Error) Errors only
- ; 1 - (Info) Hit Rate Stats + Level 0
- ; 2 - (Debug) Cache Activity (Reads/Writes) + Level 1
- ;
- LogLevel = 0
- ; How often should hit rates be displayed (given in AssetRequests)
- ; 0 to disable
- HitRateDisplay = 100
- ; Set to false for no memory cache
- ; assets can be requested several times in short periods
- ; so even a small memory cache is useful
- MemoryCacheEnabled = false
- ; If a memory cache hit happens, or the asset is still in memory
- ; due to other causes, update the timestamp on the disk file anyway.
- ; Don't turn this on unless you share your asset cache between simulators
- ; AND use an external process, e.g. cron job, to clean it up.
- UpdateFileTimeOnCacheHit = false
- ; Enabling this will cache negative fetches. If an asset is negative-cached
- ; it will not be re-requested from the asset server again for a while.
- ; Generally, this is a good thing.
- ;
- ; Regular expiration settings (non-sliding) mean that the asset will be
- ; retried after the time has expired. Sliding expiration means that
- ; the time the negative cache will keep the asset is refreshed each
- ; time a fetch is attempted. Use sliding expiration if you have rogue
- ; scripts hammering the asset server with requests for nonexistent
- ; assets.
- ;
- ; There are two cases where negative caching may cause issues:
- ;
- ; 1 - If an invalid asset is repeatedly requested by a script and that asset is
- ; subsequently created, it will not be seen until fcache clear
- ; is used. This is a very theoretical scenario since UUID collisions
- ; are deemed to be not occuring in practice.
- ; This can only become an issue with sliding expiration time.
- ;
- ; 2 - If the asset service is clustered, an asset may not have propagated
- ; to all cluster members when it is first attempted to fetch it.
- ; This may theoretically occur with networked vendor systems and
- ; would lead to an asset not found message. However, after the
- ; expiration time has elapsed, the asset will then be fetchable.
- ;
- ; The defaults below are suitable for all small to medium installations
- ; including grids.
- NegativeCacheEnabled = true
- NegativeCacheTimeout = 120
- NegativeCacheSliding = false
- ; Set to false for no file cache
- FileCacheEnabled = true
- ; How long {in hours} to keep assets cached in memory, .5 == 30 minutes
- ; even a few minutes may mean many assets loaded to memory, if not all.
- ; this is good if memory is not a problem.
- ; if memory is a problem then a few seconds may actually save same.
- ; see hit rates with console comand: fcache status
- MemoryCacheTimeout = .016 ; one minute
- ; How long {in hours} to keep assets cached on disk, .5 == 30 minutes
- ; Specify 0 if you do not want your disk cache to expire
- FileCacheTimeout = 48
- ; How often {in hours} should the disk be checked for expired files
- ; Specify 0 to disable expiration checking
- FileCleanupTimer = 0.0 ; disabled
- ; If WAIT_ON_INPROGRESS_REQUESTS has been defined then this specifies how
- ; long (in miliseconds) to block a request thread while trying to complete
- ; an existing write to disk.
- ; NOTE: THIS PARAMETER IS NOT CURRENTLY USED BY THE CACHE
- ; WaitOnInprogressTimeout = 3000
- ; Number of tiers to use for cache directories (current valid
- ; range 1 to 3)
- ;CacheDirectoryTiers = 1
- ; Number of letters per path tier, 1 will create 16 directories
- ; per tier, 2 - 256, 3 - 4096 and 4 - 65K
- ;CacheDirectoryTierLength = 3
- ; Warning level for cache directory size
- ;CacheWarnAt = 30000
|