Partie 2 – Configuration et mise en place
Configuration de cohérence
Expiration des données du cache
Les données dans le cache possèdent un TTL. Coherence flush le cache quand il voir que le TTL a expiré. Le Business Service dans ce cas appelle le service externe pour les données :
- Si le TTL est paramétré à 0 alors le cache n’expire jamais
- Si le TTL est paramétré avec nombre négatif alors les données ne seront pas mises en cache.
Options de configurations
Il est possible de configurer cohérence de manière à utiliser une JVM dédiée. Cela permet de séparer l’exécution de cohérence de la JVM standard et d’affiner la politique de gestion des performances machines. Le fonctionnement est alors le suivant :
Pour rappel, la configuration de cohérence se réalise depuis la console Weblogic :
Cas pratique de mise en place de cohérence
Dans le cas d’un adaptateur entrant d’un site de réservations de billets en ligne centralisé, il est nécessaire de transcoder les données depuis le format du partenaire vers le format pivot de notre système d’échange.
Cette transcodification est réaliser via un Business Service et ces données sont régulièrement réutilisées et peu nombreuse (civilité, code pays, etc.)
Création / Configuration du Business Service depuis l’environnement Eclipse OEPE
- Result Caching : Activation du cache.
- Cache Token Expression : Définition de la clé qui sera utilisée comme identifiant de la donnée à mette en cache
- .Expiration Time : Configuration de la politique d’expiration.
Création / Configuration du Business Service depuis la console OSB
On retrouve le même paramétrage que depuis Eclipse OEPE.
Visualisation de la configuration
Depuis la console OSB visualiser la configuration du Business Service :
Il est possible à tout moment de mettre à jour ce paramétrage depuis la console OSB, en particulier la politique d’expiration des données.
Conclusion
L’utilisation de cohérence représente une opportunité d’optimisation à ne pas négliger mais n’est pas la solution miracle à tous les problèmes de performance.
Comme tout cache, il existe un impact en termes d’utilisation mémoire. Il faut donc veiller à mettre en cache uniquement les données pertinentes et réutilisées régulièrement.