Il existe deux microservices :
Services utilisateur.
Champs de données utilisateur
uid
allow_withdraw (1 : le retrait est autorisé, 0 : le retrait est interdit)
Services financiers
Champs de données du système financier
compte (correspondant à user.uid)
montant (solde)
Maintenant, pour la fonction de retrait, vous devez d'abord déterminer allow_withdraw, puis déterminer si le solde est suffisant.
Ajouter un nœud /users/withdraw
users-service
Lors de l'exécution,
déterminera d'abord le statut Allow_withdraw,
puis demandera /finance/amount
dans finance-service
via HTTP pour obtenir le solde.
Vérifiez à nouveau si le solde est suffisant (Le problème est ici, le jugement ici ne peut pas être garanti)
Quelles sont quelques bonnes idées de mise en œuvre ?
La question de savoir si le solde est suffisant ne doit pas être jugée en fonction du montant que l'utilisateur retire ou fixe un montant de retrait fixe ? Pourquoi cela ne peut-il pas être garanti ? Tant que le montant de la comparaison en arrière-plan est incohérent ou dépasse, elle échouera.