In meiner SOA-Architektur habe ich mehrere WCF-Dienste.
Alle meine Dienste müssen auf die Datenbank zugreifen.
Soll ich einen spezialisierten WCF-Dienst erstellen, der für den gesamten Datenbankzugriff zuständig ist?
Oder ist es in Ordnung, wenn jeder meiner Dienste einen eigenen Datenbankzugriff hat?
SOA-Architektur Datenzugriff
In einer Version, ich habe nur eine Schicht Entity instanzierten in einem Dienst, und alle anderen Dienste dieser Dienst auf abhängen.
In der anderen ist der Entity-Layer in jedem meiner Dienste dupliziert.
Der Hauptnachteil der ersten Version ist die Kopplung induziert.
Der Nachteil der anderen Version ist die Schicht Duplizierung, und vielleicht SOA schlechte Praxis?
Also, was denken so gute Leute von Stack Overflow?
Ich ging in die gleiche Richtung, abgesehen davon, dass er einen Teil seiner DAO-Schicht hat, die alle WCF-Dienste von der Freigabe abhängig sind. Daher scheint es nicht zu funktionieren, bis er seinen Datenbankcode repariert . –
Das Problem ist, dass ich Probleme habe, die Datenbank in Bits zu teilen. Einige Tabellen in dieser Datenbank werden von allen WCF-Diensten benötigt. Zum Beispiel habe ich einen Dienst, der dafür verantwortlich ist, Warnungen von Fahrzeug-GPS-Positionen zu erheben. So habe ich Tabellen, die die Warnungen beschreiben, aber auch Tabelle, die Warnungen und Fahrzeuge assoziiert, und natürlich einen Vehicule-Tisch. Ich habe einen anderen Dienst, der für das Parsen der GPS-Position verantwortlich ist, dann benötigt er die Tabelle Vehicule und eine GPS-Positionstabelle. In der Tat habe ich "Kern" -Tabellen wie Vehicule, Benutzer, Flotte, von allen Diensten benötigt. Weiß nicht, wie man spaltet ... – Roubachof