SchedLock

Créer des instructions à déclenchement programmé

Plusieurs options

- cron : script à maintenir, la machine hote doit être configurée

- k8s cronJob : script à maintenir, k8s à configurer

- Spring @Sceduled : tourne si serveur tourne, accès aux ressources de l'appli 👍

Problème multi-instances

Multi-instances : il faut synchro sinon plusieurs exécutions se déclenchent

Solution : ShedLock

A condition d'avoir une ressource partagée entre les instances

- BDD (SQL / NoSQL)

- MessageQueue

- Cache

- FileSystem

- S3

Solution : ShedLock

Nous avons utilisé ShedLock dans notre projet

Tests d'inté

Avec TestContainers pour la DB

DB dans un conteneur local

Tests d'inté

Pour que les tests s'exécutent plus vite on conserve le même conteneur pour tous les tests et on delete les table métier entre chaque test

 

Pas les tables techniques, par exemple pour éviter de rejouer les scripts Liquibase

Histoire classique d'un test asocial

Anne-Sophie et moi on investigue sur un test qui s'exécute très bien tout seul mais échoue dans la suite de tests