Les principes de l'architecture orientée services site indiquent que la composition de service est importante dans SOA. Mais le Service Loose Coupling est également important. Cela signifie-t-il que le "Couche orchestrante" doit être le seul à pouvoir effectuer des appels aux services du système? Comme je comprends la SOA, la «couche d'orchestration» «colle» tous les services en une seule application logicielle. J'ai essayé de décrire cela sur Fig.A et Fig.B. La différence entre les deux est que sur la Fig.A l'application est composée de services et toute la logique est faite dans la "couche d'orchestration" (tous les appels aux services sont effectués à partir de la "couche d'orchestration" uniquement). Sur la Fig.B, l'application est composée de services, mais un service appelle un autre service. Est-ce que l'architecture de la Fig.B viole le principe du "Service Loose Coupling" de SOA? Un service peut-il appeler un autre service dans SOA? Et plus généralement, l'architecture de la figure A peut-elle être considérée comme supérieure à celle de la figure B en termes de couplage, d'abstraction, de réutilisation, d'autonomie, etc. Je suppose que l'architecture A est beaucoup plus universelle, mais elle peut ajouter des transferts de données inutiles entre la "couche d'orchestration" et tous les services appelés.Appel de services à partir de la couche Orchestrating dans SOA?
Répondre
Si tout les services ci-dessous 1 et 2 sont encapsulées derrière leurs contrats alors ils sont faiblement couplés. Cependant, B ne tire pas parti de la capacité de la couche d'orchestration à libérer Service 1. Il n'y a pas de vrai ou faux de A ou B, mais il y a des compromis. La figure A nécessite un effort de développement supplémentaire car les détails de ce que B renvoie à A doivent être extraits jusqu'à la couche d'orchestration - et s'il existe des listes de données impliquées, B doit autoriser la transmission d'une collection de paramètres en tant que critères. Cela permet cependant à svc 1 de ne rien savoir de svc 2. Donc si les services sont détenus et gérés par deux équipes différentes, alors A va permettre à ces équipes de fonctionner de façon autonome. Par exemple, si svc 1 est un service d'information client (CIS) et svc 2 est un service de paiement, la couche d'orchestration peut assembler les données CIS avec Svc 2 pour renvoyer une liste de noms de clients et leurs données de paiement les plus récentes. Avec la figure A, une jointure en mémoire est utilisée dans la couche d'orchestration pour effectuer l'assemblage. Ensuite, les clients appellent la couche d'orchestration. Avec B, le client peut appeler directement le service 1, mais si vous commencez à autoriser les services à s'appeler les uns les autres, vous pouvez vous retrouver avec un graphe de dépendance désagréable incluant la possibilité d'appels entrants. Si votre équipe est petite et possède les deux svc 1 & 2 alors ils peuvent suivre ces dépendances. Toutefois, lorsque vous avez des équipes différentes, vous pouvez constater que les dépendances ne sont pas facilement connues ou bien gérées dans B.
- 1. Normes de services Web dans SOA
- 2. Appel de services Web à partir d'UNIX
- 3. Idées pour les composants de services SOA
- 4. Disposition de Webstack incluant les services (SOA)
- 5. Appel de services Web .Net à partir de Java
- 6. La SOA est-elle principalement un ensemble de services Web?
- 7. Appel de services Web à partir de cloverETL
- 8. Question sur les différentes couches dans SOA
- 9. Appel des services Web à partir de l'application android
- 10. Conventions de dénomination WCA SOA
- 11. injectent la couche de services multiples DAO dans la pratique
- 12. Appel de services Web à partir d'un client Java
- 13. Trafic non uniforme entre services (SOA)
- 14. WCF - Appel du service WCF à partir de la couche Presenter
- 15. Architecture de style SOA dans ColdFusion?
- 16. Comment faire un appel de services Web SOAP wsdl à partir de la ligne de commande
- 17. Fournisseur d'appartenances à partir de la couche de service
- 18. IOC pour enregistrer des référentiels dans la couche de service et les services dans la couche de préentation
- 19. Appel d'un service SOAP (Web Services) à partir de la base de données ORACLE
- 20. Connexion à partir de la couche modèle de symfony
- 21. Appel du service Web Reporting Services à partir de SharePoint à l'aide de Kerberos via SSL
- 22. Appel de différents services à partir de classes de domaine de même classe de base
- 23. De bonnes ressources sur SOA?
- 24. Appel d'une fonction scalaire à partir d'un rapport de modèle de données de services de rapports
- 25. (Xpages) SOA ou accès direct à la base de données
- 26. Couche de présentation faisant référence à la couche de données
- 27. Maven pour le développement des services SOA et des clients?
- 28. Comment gérer enum lors du transfert de la couche de service à la couche de gestion?
- 29. Vulnérabilités SOA
- 30. désavantage de l'utilisation de services Web pour la couche de gestion et la couche d'accès aux données?
Votre clé de retour est-elle cassée? – Alex