Printemps de Démarrage, la mise en cache avec EhCache
J'ai besoin de mettre en cache certaines données dans mon application et je pense à propos de l'utilisation Ehcache. Et j'ai plusieurs questions:
- Ai-je besoin d'un autre serveur pour Ehcache?
- Faire j'ai besoin d'un autre client de travailler avec Ehcache?
- Comment Ehcache travaille avec plusieurs instances? Est-il même possible de créer quelque chose comme cache partagé à l'aide de Ehcache?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser Ehcache en mode Autonome. Dans cette topologie, le cache de données est tenue à la demande de nœud. Donc vous n'aurez pas besoin d'un autre serveur dans ce mode. Ehcache fournit également deux autres modes:
Distribué – Les données sur un serveur distant (ou groupe de serveurs) avec un sous-ensemble de données récemment utilisées sont tenues dans chaque
le nœud d'application. Cette topologie offre un ensemble riche de cohérence
des options. Distribué topologie est l'approche recommandée dans un
cluster ou déployé environnement d'application. Il fournit à l'
plus haut niveau de performance, de disponibilité et d'évolutivité.
Distribués topologie est disponible en Terre cuite open source offrant avec aucun client limitations et restrictions à la terre Cuite de taille de cluster. Ceux-ci sont enlevés lors de l'utilisation de l'commerciale BigMemory Max.
verrouillage. La réplication peut être asynchrone ou synchrone,
lorsque le thread d'écriture des blocs alors que la propagation se produit. La seule
la cohérence du mode de prise en charge dans le cadre de cette topologie est la Faiblesse de la Cohérence.
Vous devez utiliser Ehcache de la bibliothèque afin d'être en mesure de communiquer avec Ehache. Mais le Printemps offre une mise en Cache de l'Abstraction qui est plus élégant de travailler avec et a aussi l'avantage d'être indépendant de la sous-tendent la mise en cache de la mise en œuvre. Donc, si vous utilisez le Printemps de la mise en Cache de l'Abstraction, vous peut facilement changer de forme Ehcache, par exemple, Hazelcast. Vous pouvez en savoir plus sur le Printemps de la mise en Cache de l'Abstraction dans ici.
Printemps De Démarrage fournit
spring-boot-starter-cache
paquet de démarreur qui auto-configure un adaptéCacheManager
en fonction de la mise en œuvre tant que la mise en cache est activée.Citant Ehcache documentation:
Comme indiqué ci-dessus, il est libre de clustering option est disponible avec Ehcache.
Pour répondre à cette exigence, et Redis Hazelcast sont aussi de bonnes options.
La Documentation et les exemples doivent répondre à toutes vos questions:
https://spring.io/blog/2015/06/15/cache-auto-configuration-in-spring-boot-1-3
https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-cache
Bien sûr, vous pouvez simplement utiliser embedded EhCache au sein de votre Ressort de Démarrage de l'application. Si vous voulez partager le cache, cela dépend de votre architecture. Vous pouvez exposer RESTE des points de terminaison pour faire de vous le cache disponible pour les autres applications.
Si vous voulez un système distribué, mise à l'échelle, de haute performance de la cache, vous peut-être devrais-je regarder Hazelcast.