Redis
 sql >> Base de données >  >> NoSQL >> Redis

Quelle est la stratégie de cache par défaut lors de l'utilisation de Redis avec spring ou spring boot ?

Par défaut, vous obtenez le cache de côté, notre utilisation du cache dans l'application de démarrage Spring ressemble à ceci

@Cacheable(cacheNames = "someCache")
public String cacheThis(String id){
    return "this Is it";
}

Dans la plupart des scénarios de l'application Spring Boot, nous mettons en cache le résultat de JPA ou d'autres requêtes DB. Dans de tels cas, nous ajoutons Cacheable sur la méthode de requête, ce qui nous donne la fonctionnalité de mise en cache.

Une application peut émuler la fonctionnalité de mise en cache de lecture en implémentant la stratégie de mise en cache. Cette stratégie charge les données dans le cache à la demande.

Réf :https://docs.microsoft.com/en-us/azure/architecture/patterns/cache-aside

L'utilisation du modèle de mise en cache n'est pas toujours la solution à un problème, selon votre cas d'utilisation, vous devrez peut-être modifier la stratégie de mise en cache. Changer de stratégie de mise en cache n'est pas simple, à l'exception de certaines annotations que nous connaissons du framework Spring, telles que

  • Cacheable
  • CacheEvict
  • Mise en cache

Vous devez mettre à jour le code de votre application pour utiliser d'autres stratégies de mise en cache, bien que vous puissiez créer n'importe quelle stratégie de mise en cache à l'aide de ces annotations. Si vous n'aimez pas utiliser ces annotations, jouez avec l'objet cache réel, à tout moment vous pouvez appeler les méthodes Cache pour modifier le cache.

par exemple

Cache myCache = cacheManager.getCache("myCache"); 

Une fois que vous avez un objet cache, vous pouvez appeler toutes les méthodes pertinentes, certaines méthodes peuvent ne pas fonctionner comme prévu en raison de la limitation du cache sous-jacent.