Configuration des options de cache HCL
Les caches personnalisés utilisant le fournisseur hcl-cache par défaut peuvent être configurés avec des options supplémentaires.
Les caches HCL activent la mise en cache locale et distante par défaut. Les caches personnalisés peuvent également être configurés pour utiliser uniquement des configurations locales ou distantes.
- Cache local uniquement
- Utilisez des caches locaux uniquement pour les objets qui ne peuvent pas être sérialisables. La mise en cache locale uniquement peut également être préférée pour les objets qui ne sont pas connectés et dont la capacité de réutilisation est faible, telles que les résultats de recherche. En utilisant uniquement la mise en cache locale, vous évitez les frais supplémentaires pour la maintenance du réseau et de la mémoire dûs à la mise en cache à distance.
- Cache à distance uniquement
- Les caches à distance uniquement sont stockés uniquement sur le serveur Redis distant et ne nécessitent pas de réplications d'invalidations sur chaque serveur local. Cela peut être préférable pour les données fréquemment changées, où des volumes élevés de messages d'invalidation peuvent parfois entraîner l'utilisation de données en cache périmées en raison d'un traitement des messages plus lent.
Lorsque la mise en cache locale est utilisée, le cache HCL active automatiquement la publication et l'abonnement des messages d'invalidation.
<?xml version="1.0" encoding="UTF-8"?>
<server>
apiVersion: v1
data:
cache_cfg-ext.yaml: |-
# cache_cfg-ext.yaml content read from values
redis:
enabled: true
yamlConfig: "/SETUP/hcl-cache/redis_cfg.yaml" # Please leave this line untouched
circuitBreaker:
scope: client
cacheConfigs:
services/cache/MyRemoteOnlyCustomCache1:
localCache:
enabled: false
services/cache/MyLocalOnlyCustomCache1:
remoteCache:
enabled: false
Le cache HCL permet également à chaque entrée de cache de spécifier éventuellement qu'elle ne doit pas être mise en cache dans le cache local ou dans le cache distant. Si l'ID de cache contient "hcl-cache:skip-remote", l'entrée ne sera pas mise en cache dans le cache distant. De même, si l'ID de cache contient "hcl-cache:skip-local", l'entrée ne sera pas mise en cache dans le cache local.
<component id=”DC_HclCacheSkipRemote” type=”attribute”>
<required>true</required>
</component>