FME Flow-Architektur

Ein FME Flow-System besteht aus einer Client-Schicht und einer Server-Schicht mit jeweils einer Reihe von Komponenten.

Bewegen Sie die Maus darüber, um das Architekturdiagramm anzuzeigen:

Diagramm der FME Flow-Architektur: Client-Schicht, Server-Schicht und zugehörige Komponenten

FME Flow-Komponenten

1 Web Application Server

Auf einem Web Application Server laufen die FME Flow-Web-Benutzeroberfläche, FME Flow Web Services und alle anderen Web-Clients. Je nach Installation kann es sich bei dem Web Application Server um eine Version von Apache Tomcat handeln, die in FME Flow enthalten ist, oder um eine separate Version.

2 Web-Clients

Die Web-Benutzeroberfläche ist in FME Flow enthalten und kann in einem Browser ausgeführt werden:

Benutzerdefinierte Web-Clients können auf der FME Flow REST API entwickelt werden.

3 FME Flow Web Services

FME Flow bietet vordefinierte Dienste zum Ausführen allgemeiner Aufgaben. Mit FME Flow bereitgestellte Dienste umfassen:

4 Nicht-Web-Clients

  • FME Workbench ist die Autorenumgebung für FME Flow, kann aber auch verwendet werden, um Jobs über eine Reihe von Transformern an FME Flow zu senden.
  • FME Flow Console ist eine Kommandozeilenschnittstelle für FME Flow
  • Benutzerdefinierte Clients können auf dem FME Flow REST API-Dienst entwickelt werden.
  • Die FME Data Express Mobile App nutzt die REST API und die FME Flow Web Services über HTTP.

5 REST API

Der FME Flow REST Service bietet einen REST-basierten Kommunikationsmechanismus für Client-Service-Anwendungen.

6 FME Flow API

Alle Anfragen werden über die FME Flow API an FME Flow gesendet.

7 Security

FME Flow bietet Authentifizierung und Zugriffskontrolle über das Java Authentication and Authorization Service (JAAS)-Framework.

8 FME Flow Core

Der FME Flow Core verwaltet Job-Anfragen, Ablaufplanung und Repository-Inhalte.

9 Process Monitor

Der Process Monitor bietet Fehlertoleranzfunktionen, die sicherstellen, dass der FME Flow Core und FME Engines für die Verarbeitung von Anfragen verfügbar bleiben. Der Process Monitor bietet auch einen Mechanismus zum Verwalten der Komponenten von FME Flow und FME Engine, einschließlich der Möglichkeit, Komponenten zu starten, zu stoppen, neu zu starten und hinzuzufügen. Der Process Monitor verwendet die FME Flow Database zur Verwaltung von Prozesskonfigurationen.

10 FME Engines

FME Engines verarbeiten Job-Anfragen, indem sie FME-Workspaces ausführen. Jede FME Engine verarbeitet jeweils eine einzelne Anfrage. Die FME Flow-Verarbeitung kann skaliert werden, indem FME Engines demselben Computer hinzugefügt werden oder Computer innerhalb einer verteilten FME Flow-Umgebung getrennt werden.

11 Datensätze

Normalerweise führt ein FME Flow-Job einen Workspace aus, der Daten liest und/oder schreibt. FME Flow-Administratoren müssen sicherstellen, dass FME Engines Lesezugriff auf Datensätze oder Datenbanken haben, die von Workspaces gelesen werden, und Schreibzugriff auf alle Verzeichnisse oder Datenbanken, in die die Workspaces schreiben.

12 FME Flow Database

In der FME Flow Database werden alle mit FME Flow zusammenhängenden Informationen gespeichert, einschließlich Jobs, Repositorys, Automatisierungen, Benutzer und andere Daten. Die Datenbank sollte niemals direkt bearbeitet werden.

Bei Express-Installationen von FME Flow wird die FME Flow Database auf einer Version des PostgreSQL-Datenbankservers ausgeführt. Bei verteilten Installationen wird die FME Flow Database auf einem separat bereitgestellten Server ausgeführt. Unterstützte Datenbankserver sind PostgreSQL, Oracle und SQL Server.

13 FME Flow System Share

Bei einer Verteilten/Fehlertoleranten Installation werden die FME Flow System Share-Dateien in Verzeichnissen auf einem entfernten Dateisystem installiert, um den Zugriff von verschiedenen Computern zu ermöglichen. Diese Dateien umfassen Repositorys and Ressourcen.

FME Flow-Verbindungen

Hinweis  Eine vollständige Liste der von FME Flow verwendeten Ports finden Sie unter FME Flow-Ports.

A

Web-Clients verwenden die FME Flow Web Services über HTTP. Die Kommunikation wird durch die Web Services API, die REST API und die FME Flow API definiert.

B

Nicht-Web-Clients verwenden die REST API über HTTP.

C

Web-Clients, FME Flow Web Services und Nicht-Web-Clients verwenden die FME Flow API für die Kommunikation mit FME Flow über TCP/IP. Anfragen werden über Port 7071 an den FME Flow Core gerichtet. Nachrichten werden über einen zufällig zugewiesenen Port, der vom FME Flow Core erstellt wurde, an die Clients zurückgegeben.

D

Die FME Flow API kommuniziert über Port 7500 mit dem Process Monitor.

E

Die FME Flow API sendet Job- und Repository-Anfragen über den TCP/IP-Port 7071 an den FME Flow Core.

F

Der Process Monitor überwacht die FME Engine Prozesse und startet sie neu, wenn sie angehalten werden.

G

Einmal registriert (siehe K unten), kommunizieren die FME Engines mit dem FME Flow Core über TCP/IP-Ports, die dynamisch vom Core bestimmt werden.

H

Die FME Engines lesen und schreiben Daten von Laufwerken, Datenbanken, Web Services etc.

I

Der FME Flow Core kommuniziert mit der FME Flow Database via JDBC über den TCP/IP-Port 7082.

J

Die FME Engines kommunizieren mit der FME Flow Database. Der Port hängt von der ausgewählten Datenbank ab.

K

Die FME Engines führen eine Erstregistrierung beim FME Flow Core über den TCP/IP-Port 7070 durch.

L

Mit der FME Flow API können Job-Ablaufplan-Anfragen über den TCP/IP-Port 7073 an den FME Flow Core gesendet werden.

M

Mit der FME Flow API können Benachrichtigungs-Anfragen über den TCP/IP-Port 7072 an den FME Flow Core gesendet werden.

N

Externe Aktionen in Automatisierungen und Notification Service-Subscriber führen eine Erstregistrierung beim FME Flow Core über TCP/IP-Port 7074 durch. Subscriber verarbeiten Benachrichtigungen, die vom FME Flow Core empfangen werden.

O

Trigger in Automatisierungen und Notification Service-Publisher führen eine Erstregistrierung mit dem FME Flow Core über TCP/IP-Port 7076 durch. Mit der FME Flow API können Anfragen an den FME Flow Core über den TCP/IP-Port 7075 weitergeleitet werden. Für den Trigger E-Mail - SMTP und SMTP Publisher-Ports, siehe FME Flow-Ports.

P

Die FME Flow-Konfiguration sowie Sicherungs- und Wiederherstellungs-Anfragen werden über den TCP/IP-Port 7077 an den FME Flow Core übermittelt.

Q

Der Zugriff auf Ressourcen wird mit dem FME Flow Core über den TCP/IP Port 7079 kommuniziert.

R

Die Kommunikation mit dem FME Flow WebSocket Server erfolgt über den Port 7078.

S

Automatische (online) Anfragen zur Lizenzierung erfolgen via HTTP über Port 80.

T

Die FME Flow Queue verwaltet Warteschlangensteuerung und verteilt Jobs nach Bedarf. Die Kommunikation erfolgt über Port 6379.

U

Datenbankverbindungen- und Webverbindungen-Anfragen werden über Port 7069 abgewickelt.

V

Systembereinigung-Anfragen werden über Port 7081 abgewickelt.