Architekt mit Trennung von Interessen

Trennen Sie beim Erstellen der Backend-Architektur für ein System die Bedenken voneinander. Dies ist ein allgemeines Prinzip, das bei containerisierten Designs befolgt wird, gilt jedoch für kleinere Komponenten. Auch wenn die Komponente nicht weit entfernt und anders ist, verlagern Sie die Verantwortlichkeiten auf separate Dateien oder Verzeichnisse.

Der wichtigste Grund, auf diese Weise zu bauen, ist Interoperabilität und Modularität. Sie können die Dinge bei Bedarf austauschen. Oft wachsen die Anforderungen und eine andere Bibliothek bietet möglicherweise weitere Funktionen, sodass Sie eine alte ersetzen möchten. Oder vielleicht steigen Sie auf einen kostenpflichtigen Dienst um, der eine bessere Genauigkeit oder Funktionen bietet, also müssen Sie diesen stattdessen unterstützen. Indem Sie dies berücksichtigen und jede Bibliothek in einem eigenen ummauerten Silo aufbewahren, können Sie Dinge einfacher austauschen. Dies führt uns zum nächsten Punkt, wie diese separaten Komponenten miteinander verbunden werden sollten.

In vielen Fällen möchten Sie eine strukturierte Schnittstelle zwischen wichtigen Bibliotheken und Komponenten. Wenn Sie einen ETL- oder Datenerfassungsprozess haben, ist das Schreiben in eine Zwischenstruktur oft am besten. Dies kann eine Datei, eine Datenbank oder ein Datenstrom wie Kafka sein. Auf diese Weise können Ergebnisse später erfasst werden, wenn ein nachgelagertes Ereignis fehlschlägt oder die Daten beschädigt. Andernfalls können Sie mit einer API Daten zwischen Diensten und Mikrokomponenten austauschen, obwohl dies ohne einen Wiedergabe- oder Aufzeichnungsdienst normalerweise an Wiederspielbarkeit / Rückverfolgbarkeit verliert. In jedem Fall ist eine gut definierte, typstrukturierte Datenübersetzungsschicht oft gut für die Kommunikation zwischen Diensten geeignet. Dies kann je nach Technologie-Stack, in dem Sie sich befinden, oder den bevorzugten Zwischenprodukten für die von Ihnen verwendeten Bibliotheken viele Formen annehmen. Protobuf, JSON, yaml, csv, sql, txt sind gängige Formate.

Bei der Gestaltung eines Back-End-Dienstes gibt es viel zu beachten. Nur ein wichtiges Prinzip ist die Modularität und die Trennung von Belangen. Wenden Sie sich an uns, wenn Sie Hilfe bei der Architektur Ihres MVP benötigen.

Originalartikel veröffentlicht unter

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *