Service level caching
DECS uses caching to enhance the performance of requests made for infrequently changing data, this includes amongst others, screen schemas, entity-lists, users, and teams.
Caching is enabled at the service level and happens in:
- hocs-casework: caching of data from hocs-info-service
- hocs-workflow: caching of data from hocs-info-service
- hocs-frontend: caching of static list data from hocs-info-service
Caching is implemented in hocs-casework and hocs-workflow using the caching library Caffeine, using the following configuration:
spring.cache.caffeine.spec=initialCapacity=500,expireAfterWrite=3600s
Frontend lists
Lists in DECS can be configured in ./hocs-frontend/server/lists/index.js
as listService.types.STATIC
or listService.types.DYNAMIC
.
If a list is configured as DYNAMIC
, the list is not cached, and is called on every hydration of a schema field that uses that requested dynamic list.