2

Ich bin sehr neu in Service Fabric.Azure Service Fabric Zuverlässige Sammlung und andere beständige speichern

Empfiehlt Service Fabric, nur zuverlässige Sammlungen zu verwenden, um ALLE Daten für eine Anwendung zu speichern?

Was passiert, wenn ich SQL DB verwende, um alle meine Geschäftsdaten persistent zu machen und Reliable Collection zur Integration in SQL DB zu verwenden. Nach DDD, wenn ich mein Aggregat in der SQL-DB persistiere und einen Eintrag in der zuverlässigen Sammlung belasse, um mit einem anderen beschränkten Kontext zu kommunizieren. Wird dieser Ansatz Probleme haben?

Antwort

1

Der Service Fabric empfiehlt NICHT, das gesamte Datum in zuverlässigen Sammlungen zu speichern. Es ist Ihre Wahl. Das Service Fabric bietet Ihnen auf vielen Ebenen die Freiheit, Dinge zu tun.

Sie können eine externe DB (wie SQL DB oder DocumentDB oder irgendetwas) verwenden und den Stateful-Service als Cache verwenden. Oder verwenden Sie den Stateful-Service als primären Speicher und verwenden Sie keine externe Datenbank.

Obwohl die Reliable Collection in der Verwendung ein wenig eingeschränkt ist (es ist ein Schlüssel/Wert-Speicher ohne effektive Abfrage-Schnittstelle außer Schleifen aller Daten) hat es den Vorteil intern gespeichert (Leistung) und es hat einen guten Fehler sichere Mechanismen (Definieren von sekundären Instanzen, so viele wie Sie möchten). Die Partitionierungsfunktionen sollten ebenfalls nicht vergessen werden.

Persönlich neigen ich dazu, die externen Abhängigkeiten zu minimieren. Ein externer DB ist eine Abhängigkeit. Wenn Ihre Anforderungen für Ihre Anwendung jedoch umfangreiche Abfragefunktionen festlegen, sollten Sie darauf achten.

+0

Können Sie mir bitte einen Link, wo geschrieben, dass SF nicht alle Daten in Reliable Kollektionen Speicherung nicht empfehlen? – cassandrad

+0

Es ist mein Englisch. Ich meinte, dass es keine Verpflichtung gibt, Daten in zuverlässigen Sammlungen zu speichern. Es ist eine Wahl. Speichern Sie es in SF oder in einer externen Datenbank. – Martin

0

Microsoft Nach

Treat Zuverlässiger Schauspieler als Transaktionssystem. Service Fabric Reliable Actors ist kein zweiphasiges Commit-basiertes System, das ACID anbietet. Wenn wir die optionale Persistenz nicht implementieren und der Rechner auf Dies läuft, wird dessen aktueller Status mitgehen. Der Aktor wird sehr schnell auf einem anderen Knoten erscheinen, aber wenn wir nicht die Implementierung der Backing-Persistenz haben, wird der Status weg sein. Jedoch zwischen Hebelversuche, doppelte Filterung und/oder idempotent Design, können Sie ein hohes Maß an Zuverlässigkeit und Konsistenz erreichen.

https://acom-feature-videos-twitter-card.azurewebsites.net/en-us/documentation/articles/service-fabric-reliable-actors-anti-patterns/

Verwandte Themen