Tom schrieb:
> Die Frage geht in die falsche Richtung.
>
> Niemand baut eine Riesenanwendung, in der alle Funktionalitäten
> enthalten sind. "KI", Sensoren, Planung, Regelung etc. sind komplett
> separate Komponenten (im einfachsten Fall einzelne Programme), die
> irgendwie über festgelegte Schnittstellen miteinander kommunizieren.
Das ist das Prinzip moderner Microservice-Architekturen, das gegenüber
klassischen Monolithen zwar klare Vorteile -- Modularisierung,
Austauschbarkeit von einzelnen Komponenten, geringere Komplexität der
Einzelkomponenten, Technologieunabhängigkeit, ... -- hat, aber leider
auch gewisse Nachteile. Insbesondere ist hier der zusätzliche Aufwand
für die Kommunikation zu nennen, der eine zusätzliche Komplexität sowie
eine gewisse Latenz bedeutet und daher in bestimmten Anwendungsfällen
inadäquat ist. In Anwendungsfällen, in denen harte oder echte Echtzeit
gefordert ist, oder in denen besonders große Datenmomolithen verarbeitet
werden müssen, kann das ein zwingendes Ausschlukriterium für
Microservice-Architekturen sein.