The CoreMedia system uses caching to provide a faster access to various e-Commerce entities (that is, products, categories, etc.). These entities will automatically be cached when used by the CoreMedia system. The unified API cache keys are used for caching the commerce entities.
The e-Commerce API defines cache classes for each entity. These are used to define default capacity and cache time.
Each of the default values can be adapted to the needs of your system environment by overwriting the corresponding properties.
The following overview lists all default values available for configuration. Each value can be overwritten in the
corresponding CoreMedia Blueprint application.properties
file.
Please note that the CoreMedia system also performs an active event based cache invalidation (see also Section 3.4.13, “Event-based Commerce Cache Invalidation”).
# e-Commerce Cache parameter for each Commerce related CacheClass # cache time will be set in seconds, capacity in number of instances # # Note, for each language and currency variant a separate cache # instance is used! # Product and SKU instances livecontext.ecommerce.cache.product.time=3600 livecontext.ecommerce.cache.product.capacity=10000 # Category instances livecontext.ecommerce.cache.category.time=3600 livecontext.ecommerce.cache.category.capacity=10000 # number of lists containing top categories livecontext.ecommerce.cache.topCategoryLists.time=3600 livecontext.ecommerce.cache.topCategoryLists.capacity=100 # number of lists containing sub categories livecontext.ecommerce.cache.subCategoryLists.time=1800 livecontext.ecommerce.cache.subCategoryLists.capacity=1000 # number of product lists for categories (products as direct # members of a category) livecontext.ecommerce.cache.productListsByCategory.time=3600 livecontext.ecommerce.cache.productListsByCategory.capacity=500 # Marketing Spot instances livecontext.ecommerce.cache.marketingSpot.time=3600 livecontext.ecommerce.cache.marketingSpot.capacity=5000 # number of lists containing all marketing spots livecontext.ecommerce.cache.marketingSpotLists.time=3600 livecontext.ecommerce.cache.marketingSpotLists.capacity=100 # dynamic/personalized price instances livecontext.ecommerce.cache.dynamicPrice.time=300 livecontext.ecommerce.cache.dynamicPrice.capacity=10000 # static/list price instances livecontext.ecommerce.cache.staticPrice.time=300 livecontext.ecommerce.cache.staticPrice.capacity=10000 # availability infos for all products livecontext.ecommerce.cache.availability.time=300 livecontext.ecommerce.cache.availability.capacity=10000 # user segment instances livecontext.ecommerce.cache.segment.time=3600 livecontext.ecommerce.cache.segment.capacity=5000 # number of lists containing all user segments livecontext.ecommerce.cache.segmentLists.time=3600 livecontext.ecommerce.cache.segmentLists.capacity=100 # number of segment lists for all users livecontext.ecommerce.cache.segmentsByUser.time=60 livecontext.ecommerce.cache.segmentsByUser.capacity=1000 # contract instances livecontext.ecommerce.cache.contract.time=3600 livecontext.ecommerce.cache.contract.capacity=500 # number of contract lists for all users livecontext.ecommerce.cache.contractsByUser.time=60 livecontext.ecommerce.cache.contractsByUser.capacity=200 # number of lists containing all workspaces livecontext.ecommerce.cache.workspaceLists.time=3600 livecontext.ecommerce.cache.workspaceLists.capacity=100 # number of previewTokens used be all editors # rule of thumb for capacity: 5 x number of editors livecontext.ecommerce.cache.previewToken.time=3600 livecontext.ecommerce.cache.previewToken.capacity=1000 # user is logged in info that is used for request # rule of thumb for capacity: number of expected concurrent requests livecontext.ecommerce.cache.userIsLoggedIn.time=10 livecontext.ecommerce.cache.userIsLoggedIn.capacity=500 # commerce user instances (caching for request purpose only) livecontext.ecommerce.cache.commerceUser.time=10 livecontext.ecommerce.cache.commerceUser.capacity=500 # store info instances livecontext.ecommerce.cache.storeInfo.time=3600 livecontext.ecommerce.cache.storeInfo.capacity=100 # contract ids for all users livecontext.ecommerce.cache.contractIdsByUser.time=3600 livecontext.ecommerce.cache.contractIdsByUser.capacity=1000