3 Stimmen

Bereichslogik und Datenzugriff von MVC auf entfernter API/Webdienst-Schicht

In unserem System haben wir eine Remote-API-Schicht (z. B. SOAP, XML-RPC, REST usw.), um die Domänenlogik und den Datenzugriff für die Webanwendung und alle darauf aufbauenden Client-Anwendungen zu verwalten. Im Gegensatz zu früher habe ich keinen Geschäftslogikcode und keine DB-Konnektivität in der Webanwendung, alle Benutzeraktionen werden so übersetzt, dass sie die Methoden der Schicht aufrufen.

Meine Bedenken sind, sagen wir für das Rendering einer Seite, es erfordert eine ganze Reihe von Aufrufen, um die Daten zu holen, z. B. ein Benutzer-Dashboard mit Berichten, jüngsten Geschichte, einige Portlets, etc. Was sind die Nachteile, die Sie bei meinem derzeitigen Entwurf (der Delegierung von Logik und DA an die Remote-Schicht) sehen? Ich sehe, dass der Aufbau und die Übertragung von textbasierten Daten über HTTP schwerer und teurer sind als der DB-Zugriff. Außerdem muss die Optimierung stattdessen auf der Remote-Schicht erfolgen (da die Geschäftslogik und der DA-Code in der Webanwendung liegen, haben Sie mehr Flexibilität bei der Optimierung).

Ich überlege nun, ob ich einen Remote-"Helper"-Dienst erstellen soll, der es mir ermöglicht, alle Aufrufe in einem einzigen zusammenzufassen, d. h. statt mehrerer Aufrufe sende ich einen einzigen Aufruf mit einer Sammlung von Methodennamen und Argumenten. Das sieht ein bisschen hässlich aus, und deshalb bin ich immer noch skeptisch, ob ich das jetzt machen soll.

Ich würde gerne Ihre Meinung zu dieser Architektur erfahren und wenn Sie eine Webanwendung auf ähnliche Weise entwickelt haben, welche Ansätze haben Sie in der Vergangenheit verfolgt, um eine gute Leistung zu gewährleisten? Wenn es noch andere Bedenken gibt, über die ich mir wirklich Sorgen machen sollte, teilen Sie mir diese bitte ebenfalls mit.

Merci !

yc

0 Stimmen

Ich habe festgestellt, dass diese Frage schon ziemlich alt ist. Haben Sie diese Frage für sich selbst beantwortet? Wenn nicht und Sie immer noch einen Rat suchen, lassen Sie es mich wissen und ich werde es versuchen.

0 Stimmen

Hallo Kumpel, die Frage bleibt unbeantwortet. Ich habe die App mit der besagten Architektur entworfen und implementiert, aber ich weiß nicht, was in ein paar Jahren für Probleme auftreten werden. Ich würde auf jeden Fall gerne von dir zu diesem Thema hören.

0 Stimmen

@yclian - Ich sehe, dass viel Zeit vergangen ist, seit die Frage gestellt wurde. Wie verhält sich Ihre Architektur jetzt? Wie haben Sie die Probleme gelöst, wenn Sie abhängige Datenaufrufe haben? Ich meine, wenn man nicht weiß, welche Daten man bekommen soll, bevor man mit einigen Daten arbeitet? Vielen Dank

-1voto

Fatih Türker Punkte 135

Wenn Sie Output-Caching in asp.net mvc richtig verwenden, wird die Leistung um ein Vielfaches erhöht.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X