Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
introduction:architecture [17.09.2013 ] 172.16.1.171 [action_SmartGate] |
introduction:architecture [13.11.2014 ] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== Architektur ====== | ||
+ | Das folgende Diagramm zeigt den Aufbau der dStore-Plattform und die einzelnen Komponenten: | ||
+ | |||
+ | {{ :introduction:dstore-architecture.png?600&nolink |}} | ||
+ | |||
+ | ===== Anwendungen ===== | ||
+ | |||
+ | Die konkreten Anwendungen die auf das [[:webservice|webservice_SmartGate]] zugreifen. Beispiele für Anwendungen sind: | ||
+ | |||
+ | * Webanwendungen wie z.B. Webshops oder CMS | ||
+ | * Administrations-Backends für Webanwendungen | ||
+ | * Desktop-Anwendungen (z.B. Call-Center Auftragserfassung) | ||
+ | * Anwendungen auf properitären Plattformen (TV-Geräte o.ä.) | ||
+ | * Mobile-Apps | ||
+ | |||
+ | Durch den Zugriff per HTTP-Requests ist die Programmiersprache in der die Anwendungen entwickelt werden beliebig. Für die Programmiersprache PHP stellen wir eine kleine Hilfsbibliothek bereit, genannt "dStore_php". Für andere Programmiersprachen finden sich in diesem wiki Anwendungsbeispiele. | ||
+ | |||
+ | |||
+ | ===== webservice_SmartGate ===== | ||
+ | |||
+ | Das [[webservice:|webservice_SmartGate]] verarbeitet eingehende HTTP-Anfragen und liefert das Ergebnis in der Regel als XML-Rückgabe. Die Anwendungen und internen SmartGates verarbeiten diese Antworten. | ||
+ | |||
+ | Das webservice_SmartGate leitet bestimmte Anfragen (zu erkennen am "/engine" in der URL) an die [[:engine|SmartEngine]] weiter. Es werden dabei gespeicherte Prozeduren ("Stored Procedures") angesprochen. | ||
+ | |||
+ | ===== admin_SmartGate ===== | ||
+ | |||
+ | Das [[admin:|admin_SmartGate]] ist die zentrale GUI zur Verwaltung für Aufgaben wie: | ||
+ | |||
+ | * Auftragsverwaltung | ||
+ | * Artikeldatenverwaltung | ||
+ | * Personendatenverwaltung | ||
+ | * Marketing-Aktionen einrichten | ||
+ | * Konfigurationsarbeiten wie Zahlungs- und Versandkosten, Auftragsstatus usw. | ||
+ | * Administrationsarbeiten wie Nutzer anlegen | ||
+ | |||
+ | Über das Desktop-Konzept lässt sich die Oberfläche der Anwendung auf Benutzer anpassen. Somit kann die Anwendung sowohl von Administratoren als auch von geschulten Nutzern verwendet werden. | ||
+ | ===== xml_SmartGate ===== | ||
+ | |||
+ | Das [[xml:|xml_SmartGate]] dient dem automatischen Austausch von Massendaten mit externen Systemen. Mit dem xml_SmartGate können folgende Daten importiert bzw. exportiert werden: | ||
+ | |||
+ | * Artikeldaten (Import) | ||
+ | * Auftragsdaten (Export) | ||
+ | * Auftragsrückmeldungen (Import) | ||
+ | * Personendaten (Import und Export) | ||
+ | ===== SmartEngine ===== | ||
+ | |||
+ | Die [[:engine|SmartEngine]] stellt die zentrale Business-Logik zur Verfügung. Dies umfasst die Datenspeicherung und Verarbeitung. | ||
+ | |||
+ | Die Funktionalitäten der [[:engine|SmartEngine]] werden über das [[:webservice|webservice_SmartGate]] zur Verfügung gestellt, ein direkter Zugriff auf die [[:engine|SmartEngine]] ist nicht möglich. | ||
+ | ===== action_SmartGate ===== | ||
+ | |||
+ | Das [[:action|action_SmartGate]] ist die Komponente zur Verarbeitung von Jobs. Es erhält seine Funktionalität über Plugins und erledigt derzeit Aufgaben wie: | ||
+ | |||
+ | * E-Mail Versand bei Auftragsstatuswechsel | ||
+ | * Kommunikation mit Zahlungsdienstleistern | ||
+ | * Erzeugung von Dokumenten wie Rechnungen oder Lieferscheinen |