2

Hintergrund Nachdem mit API Apps und ASP.NET dem Ersten Schritten durchläuft in Azure App-Service-Tutorial (https://azure.microsoft.com/en-gb/documentation/articles/app-service-api-dotnet-get-started/) hatten wir eine Architektur Frage Entstehen heute die Designentscheidungen, die getroffen wurden, um die To-Do-List-Anwendungs-API-Ebenen in eine Middle-Tier-API-App und eine Data-Tier-API-App aufzuteilen.Azure Apps - Verteilte Architektur - 1 API-Layer vs 2 API Layer - Design-Entscheidungen

ToDoListApplicationArchitecture

Wenn Build einer Anwendung näher, eine verteilte Architektur mit welchen Überlegungen sollten stattfinden zu verstehen, wenn diese Art der Trennung in Ihren API-Schichten auftreten sollte?

Eine andere Möglichkeit, diese Frage zu stellen, sind die Vor- und Nachteile einer separaten Middle-Tier-API-Layer- und Data-Tier-API-App beim Erstellen Ihrer Anwendung.

Andere Fragen hatte ich gelesen von Web-Anwendungen Architektur: 1 oder n API Frage (siehe Link, folgt), die interessante, etwas anders auf die Frage war, während sie fragen wir. Wir sprechen von einer einzelnen Domäne, die separate API-Schichten für die mittlere Schicht (Logik) und die Datenschicht aufweist.

Web apps architecture: 1 or n API

Antwort

1

Dies hängt natürlich. Die Entscheidung, ob ich "Infrastrukturdienste" ausbilde, hängt sehr stark von Ihren Bedürfnissen und Ihren Anwendungen ab.

Infrastruktur-Tier-Services werden im Allgemeinen viel mehr wiederverwendet als Business-Logic-Tier-Dienste. Sie lassen sich sehr einfach in neue Anwendungen umwandeln. Die gängigste Instanz ist das Erstellen einer Verwaltungsschnittstelle als separate Anwendung.

Wenn Sie bereits mehrere Anwendungen in Ihrer Organisation erstellt haben und die Wiederverwendung regelmäßig vorkommt, würde ich ernsthaft über Infrastrukturdienste nachdenken. Wenn Ihre Organisation ihre erste Anwendung schreibt und Sie nicht sehen, dass sich diese auf zusätzliche Schnittstellen ausbreitet, dann können Sie Ihren Datenzugriff vielleicht nur in einem DAO-Muster isolieren, es ist ziemlich einfach, ihn später zu einem eigenständigen Dienst umzuformen.

+0

Danke für die Erklärung Rob, das ist genau das, was ich gesucht habe. In dem konkreten Szenario, das wir uns angesehen haben, sehe ich jetzt, dass wir die Vorteile eines Infrastrukturdienstes in absehbarer Zukunft nicht realisieren würden - also wäre eine einzelne API-Schicht mit einem DAO-Muster der richtige Weg für uns. Danke noch einmal! – Arnie

0

Ich denke, das Beispiel Design ist etwas verwirrend. In der realen Welt habe ich solch ein Design noch nicht gesehen, weil Design so aussieht, als ob jede Funktion ein http/rpc Aufruf wäre?

Meine Erfahrung wäre, dass das SPA eine öffentliche API (oder Gateway-API) verwendet, die dann Ihre interne API/Microservices aufruft, um die Ergebnisse zu aggregieren. Es ist Ihre Microservices, die DAOs haben und vor allem die Geschäftslogik

Verwandte Themen