Wenn mehrere „Geschäftsmodule“ auf einem Anwendungssystem bereitgestellt werden, erwarten wir eine einheitliche Strukturvorlage. Diese Strukturvorlage stellt eine wichtige Verbindung zwischen „Geschäftsarchitektur“ und „technischer Architektur“ dar. Dieser Artikel ist eine Einführung in diese Strukturvorlage. erkunden.
▐Strukturelles Design
Überprüfen Sie zunächst die in „Architecture of Simple Application Framework VSEF“ erwähnte Gesamtstruktur .
▐Strukturbeispiel _
Modul:
Client: vsef-archetypes-client
Geschäftslogik: vsef-archetypes-application
vsef-archetypes-application-Verzeichnisstruktur:
▐Ausführungsvorlage _
-
Umgang mit Ausnahmen -
Braucht es Idempotenz? -
Ist gleichzeitiges Sperren erforderlich? -
Ist die Bereitstellung eines Komponentenprotokolls erforderlich? -
Gibt es Datenbank- und Nachrichtenoperationen? -
.......
Beispiel für eine Verarbeitungsablauf-Vererbungsverarbeitungsvorlage
In diese Vorlage ist die Abstraktion der „idempotenten Verifizierung und Verarbeitung“ eingebettet.
[Erweiterung] Das Folgende ist eine relativ komplexe Verarbeitungsvorlage im V2-Transaktionsframework, die als abstrakte Gesamtreferenz verwendet werden kann.
▐Modellabstraktion _
Mit zunehmender Geschäftsaktivität kann es jedoch weiter verfeinert werden, was jedoch auch zu einer Verringerung der Vielseitigkeit führt. Dies sollte nicht Teil des allgemeinen Rahmens sein, sondern Gegenstand spezifischer Diskussionen zur Umsetzungseffizienz sein, auf die nicht eingegangen wird Hier.
[Erweiterung] Nachfolgend wird die endgültige Modelllogik in V2 gezeigt, die als Referenz für das nachfolgende Design verwendet werden kann.
▐价保 Preisversicherung
Szeneneinführung
V2-Preisgarantie-Geschäftsaktivitätsanalyse
Prototypenstruktur
Der Prototyp wählt vier Eintrittsfälle aus: Beantragung eines Preisgarantiedienstes, Einreichung eines Preisgarantiedienstes, Beantragung und Einreichung eines Dienstes sowie asynchrone Prüfnachrichtenverarbeitung.
Die Hauptstruktur ist in der folgenden Abbildung dargestellt:
Fokuspunkt
Geschäftstätigkeitsportfolio
Bei der Preisgarantie gibt es ein Szenario, bei dem es sich um „Antragstellung und Einreichung eines Preisgarantiedienstes“ handelt. Dieser Dienst muss mit „Erbringung eines Preisgarantiedienstes“ und „Antrag auf einen Preisgarantiedienst“ kombiniert werden. Die Verarbeitungsstrategien können hier Folgendes umfassen:
Prozessunabhängigkeit: Schreiben Sie einen neuen „Antrag und Einreichung des Preisgarantie-Abwicklungsprozesses“ und gestalten Sie ihn unabhängig.
Prozessaggregation: Schreiben Sie einen „Preisgarantiedienst anwenden und einreichen“ und rufen Sie den l3.process-Dienst „Renderpreisgarantiedienst“ und „Preisgarantiedienst beantragen“ auf.
API-Aggregation: Schreiben Sie eine API-Implementierung, die „Preisgarantiedienst anwenden und übermitteln“ und „Preisgarantiedienst rendern“ und „Preisgarantiedienst beantragen“ aufruft.
Die Preisgarantie verwendet die API-Aggregation, da sie zusätzlich zur Kernlogik wie Fehlercodekonvertierung, Strombegrenzung usw. in die API einbezogen wird. Daher ist es besser, die Logik so konsistent wie möglich zu halten Es als Blackbox und aggregierte Dienste zu behandeln. Verstehen Sie die spezifischen Details hinter atomaren Diensten nicht.
abstraktes Modell
Die abstrakte Einschränkung des Preisgarantie-Verarbeitungsvorlagenmodells ist „Keine“.
Ein sehr komfortabler Fall hierfür ist die Verarbeitung von „asynchronen Prüf“-Nachrichten. Sie können den Nachrichtenverarbeitungskontext direkt als Anforderung und Ergebnis verwenden und so die Konvertierungskosten reduzieren. Dies erschwert natürlich die Wiederverwendung aktiver Knoten. Hier ist es besser, die direkte Verbindungsfähigkeit von Dienstskripten zu nutzen. Dennoch ist es sinnvoll, auf der abstrakten Ebene des Modells zu denken.
Geschäftsidentitätsfähigkeit
Möglichkeit zur Berechnung der Geschäftsidentität mit Preisgarantie
Erweiterter Servicemechanismus
Erweiterung ist ein Dienst und sein Erweiterungsmechanismus kann angepasst werden.
Im Preisgarantie-Prototyp sind einige Geschäftserweiterungen zur Verifizierung, Preisdifferenzberechnung und Darstellung enthalten. Um diese Erweiterungen zu unterstützen, sind im Erweiterungsbereich hauptsächlich mehrere Module konzipiert:
ext – Erweitertes Servicemodul: Implementierung erweiterter Services, verantwortlich für die Suche nach Plug-Ins und Recycling-Ergebnissen.
Plugins – Plug-in-Modul: Plug-ins zur Implementierung der Geschäftserweiterung, die in der Anwendungscodebibliothek gehostet oder über Pakete von Drittanbietern integriert werden können.
SDK – Erweitertes SDK-Modul: Modell- und Methodendefinition, das als Brücke zwischen Ext-Erweiterungsdiensten und Plugins-Plug-In-Implementierung dient.
▐groupon_ _
Szeneneinführung
Analyse der Geschäftsaktivitäten der Gruppe
Prototypenstruktur
Gesamtbild der funktionalen Struktur des Gruppenbeitritts-Prototyps
Fokuspunkt
Geschäftsskript
Der Gruppenbuchungsabfragedienst nutzt direkt l5.ability
Verkettung von Unterprozessen
„Gruppenbeitritts- oder Gruppenstartprozess“ verbindet zwei Teilgeschäftsprozesse hintereinander
Datenoperationen
Der Gruppendatendienst ist nicht direkt von DO abhängig
Aufgrund der folgenden Prototypenstruktur ist die Projektstruktur der Preisgarantie und des Gruppenkaufs dieselbe. Wenn die Grenzen dieser ähnlichen „Anwendungsarchitektur“ definiert werden und mehrere „Untergeschäftsanwendungen“ in einer Anwendung bereitgestellt werden, können einheitlichere Dienste bereitgestellt werden (mehr auf Verständnisebene), ähnlich der Idee von Docker. , was auch die schnelle Initialisierung neuer Geschäftsmodule erleichtert. Der Unterschied zu Docker besteht darin, dass diese Abstraktionsebene weiter in bestimmte Geschäftseinheiten hineinreicht.
Teamvorstellung
Wir sind das Produktservice-Team für Handelsplattformen. Das Team befasst sich hauptsächlich mit der Bereitstellung von Transaktionslinks. Während der Bereitstellungsarbeit abstrahiert und erstellt es horizontale Produktfunktionen (z. B. Vorverkäufe, elektronische Gutscheine usw.). Das Team konzentriert sich auf Geschäftsarchitektur, DDD und andere Theorien und Praktiken. und ist bestrebt, Geschäfte effizient und stabil abzuwickeln. Zugang und abstrakte Ermächtigung.
Dieser Artikel wurde über das öffentliche WeChat-Konto – Big Taobao Technology (AlibabaMTT) – geteilt.
Bei Verstößen wenden Sie sich bitte zur Löschung an [email protected].
Dieser Artikel ist Teil des „ OSC Source Creation Plan “. Wer liest, ist herzlich eingeladen, mitzumachen und gemeinsam zu teilen.