J'ai conçu l'application CQRS + ES. Cela je suis nouveau le monde de CQRS + ES a lu dessus pendant l'année dernière et il fait parfaitement sens mais mettre en application le sens parfait n'est pas toujours facile.Plusieurs commandes pour un seul processus dans CQRS
de toute façon ma question ou les questions sont:
quelle est la meilleure façon de contenir un processus de commande multiple (étape)? à-dire l'enregistrement d'un utilisateur ce sont les commandes que je veux tirer dans ce processus:
- CreateUserProfileCommand
- CreatePaymentAccountCommand
- SendEmailAddressVerificationCommand
J'ai regardé La saga ils regardent plus démarrer et arrêter alors ce processus qui est tout continu.
Bien sûr, enchaîner les étapes des événements peut conduire à un cauchemar de relecture.
MISE À JOUR @EbenRoux
Pour ajouter plus d'informations le CreatePaymentAccount devrait effectivement être nommé UpdateUserWithPpaymentAccount. Je vois la confusion dans le nom. Qu'est-ce que cette commande obtient réellement une 3ème partie et obtenir un PaymentCustomerId qui se joint à l'utilisateur.
Je comprends ce que vous dites à propos de Saga et je me demandais si ce processus avait besoin de ça.
À l'heure actuelle, cette application est en cours, donc tout le contexte métier (je suppose que c'est ce que vous entendez par BC) ne possède pas ses points de terminaison pub/sous-point de vue. Je voudrais y aller cependant. Gardez à l'esprit que les commandes ne sont pas relues.
Je suis En supposant que BC signifie Business Context. Je comprends ce que vous dites, c'est un tout nouveau projet, donc je me familiarise avec Saga et la mise en place des points de terminaison et des abonnés. Aller à mettre à jour ma question avec plus d'informations – ChampChris
BC est un contexte borné, mon mauvais :) --- Eh bien, avoir un point final "fronting" le système de base réel, ou l'intégration de tiers, aide vraiment. Ces points de terminaison «frontaux» ne devraient jamais connaître ou interagir avec d'autres points de terminaison «de base». Ce serait la responsabilité du point final du processus. Le point final du processus est responsable de toute l'interaction et de la coordination.C'est vrai, en tout cas, pour *** orchestration *** (ce que je préfère). Dans un système *** *** chorégraphié, les choses peuvent sembler différentes mais je pense que vous pourriez vous retrouver avec une complexité accidentelle avec la chorégraphie IMHO. –