coût
temps
coût
temps
coût
temps
Les points clés
L'élasticité implique que toute requête doit être
La plupart des services ont en commun
Le groupe dont on fait parti, c'est lié à :
exemples :
Un utilisateur peut faire parti de plusieurs groupes
Le rôle que l'on a vis-à-vis du service, dépend de ce qu'on a le droit de faire :
Les rôles peuvent être déclinés en sous-rôles pour plus de finesse
On a
Pourtant c'est le même utilisateur faisant parti des mêmes groupes
tenant
group/role
groups
roles
requête
utilisateur
le manager ne doit pas pouvoir ajouter le rôle administrateur dans le mapping de son tenant
sinon il peut augmenter ses propres droits
username + password
=> gérer une liste interne contenant les utilisateurs autorisés et définir pour chaque utilisateur la liste des groupes dont il fait parti (ou faire appel à un service tiers)
Utile pour
Token self content avec authentification & payload
Toujours utiliser un droit de même type
Ne jamais mixer les deux types sur une même ressource
définit par
un webhook est défini
référentiel tâches
PATCH tâche
POST sms
data wharehouse
POST tâche
envoi de sms
référentiel tâches
PATCH tâche
formatage sms
POST tâche
data wharehouse
POST tâche
envoi de sms
POST sms
module tiers MGDIS
"webhooks": [
{ // This webhook will create a folder in the EDM
"topic": "POST+*/tiers",
"callback": "/document-collect/root/tiers?cmisaction=createFolder&propertyId[0]=cmis:name&propertyValue[0]={reference}&propertyId[1]=cmis:objectTypeId&propertyValue[1]=cmis:folder&succinct=true",
"method": "POST",
"options": {
"withoutBody": true
}
},
{ // this webhook will synchronize the indexation service
"topic": "POST+*/tiers",
"callback": "/request/api/collections/tiers/{reference}",
"method": "PUT",
"headers": {
"Authorization": "Basic YWRtaW46QzdOYVdWMzlwM1M4R0hFd2RTTjNIZ1lwVzFXMGVtS1E="
}
},
{ // this webhook will; synchronize the old referential
"topic": "POST+*/tiers",
"callback": "https://oldapi.comany.com/application/referential/modules/webhook/index.php?reftiers={reference}",
"method": "PUT"
},
]Ils sont obligatoires pour :
NE SONT PAS (forcément/souvent) LES MÊMES
On ne garde que le dernier état de la ressource
On stocke toutes les modifications réalisées sur la ressource
(on peut ajouter un cache snapshot pour accélérer l'accès)
Un référentiel doit gérer l'historique des ressources qu'il gère
=>
Utilisation de la sauvegarde incrémentale obligatoire
Basé sur les Entreprise Integration Pattern
(C'est à l'intégration ce que sont les Design Patterns à la POO)
Tests
Tests
Avec Serverless et les Lambda
Inconvénient : tout est synchrone
Si on veut de l'asynchrone il faut utiliser
des queues ou des notifications