Question

Supposons que j'ai une grande demande de médiation infrastructure middleware entre plusieurs composants métier (applications clients, réseau, paiements, etc.). La pile de logiciel médiateur est responsable de l'orchestration, le routage, la transformation et d'autres choses (comme le livre Modèles d'intégration d'entreprise par Gregor Hohpe).

Ma question est: est-il une bonne conception de mettre un peu logique métier sur le middleware

?

Disons que mon application A demande des données clients du middleware. Mais pour obtenir ces données, je dois fournir id client et certains autre paramètre . Le fetching de ce paramètre doit être fait par l'application faisant la demande ou est le middleware responsable de la « facilitation » et fournir une interface qui reçoit client ids et récupère en interne l'autre paramètre ?

Je sais que ce n'est pas une question simple (à cause de la définition de la logique métier), mais je me demandais si c'est une approche générale ou des lignes directrices.

Était-ce utile?

La solution

Ceci est le modèle "Composite Application"; au cœur d'une architecture orientée services. C'est ce que les vendeurs vendent ESB:. Un moyen de mettre supplémentaire logique métier quelque part qui crée une application composite sur les applications existantes

Ce n'est pas simple parce que votre application composite est non seulement le routage. Il a une bonne nouvelle transaction composite en couches en haut de la gamme.

Conseil. Regardez obtenir un bon ESB avant d'aller trop beaucoup plus loin. Cela devient rapidement hors de contrôle et ayant un soutien supplémentaire est utile. Même si vous ne l'achetez pas quelque chose comme JCAPS ou Ouvrir ESB, vous serez heureux que vous avez appris ce qu'il fait et comment ils organisent des applications composites complexes.

Autres conseils

En dehors du routage, la transformation et l'orchestration, la performance devrait garder à l'esprit lors du chargement de middleware avec les exigences fonctionnelles. Middlware devrait prendre une fraction de l'ensemble de bout en bout la durée de vie des transactions. Ceci peut être réalisé qu'en se concentrant sur les fonctionnalités de base de middleware, plutôt que d'essayer de compléter les fonctionnalités du système hôte.

Orchestration, routage et transformation.

Vous ne faites pas de ces pour des raisons techniques, au hasard, ou tout simplement pour le plaisir, vous faites ces parce que vous avez des besoins de l'entreprise -. Ergo il est logique d'affaires impliqués

La seule chose qui vous manque pour un système d'affaires complet est calcul et rapports (supposons que vous avez déjà la sécurité en place!).

À l'exception des réseaux de très bas niveau, les problèmes de systèmes d'exploitation et de stockage presque tout ce qui comprend un système informatique est là parce que les entreprises / gouvernement / utilisateurs finaux veut être là.

Le choix de « Business Logic » comme terminoligy était très pauvre et a conduit à des distorsions sans fin de la conception et l'architecture.

Qu'est-ce que la plupart des bons designers / architectes veulent dire par la logique métier est le calcul et l'analyse.

Si vous "% s / Logique d'entreprise / Calcul / g" la plupart des édits d'architecture plus de sens.

L'application middleware devrait le faire. Système A ne devrait avoir aucune idée que l'autre paramètre existe, et aura certainement aucune idée sur la façon de l'obtenir.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top