Architektur-Ueberblick
Systemarchitektur
Die get_ITconsulting Plattform basiert auf einer modernen Microservice-Architektur, die auf Skalierbarkeit und Wartbarkeit ausgelegt ist. Das System besteht aus mehreren unabhaengig deploybaren Services, die ueber eine Event-Bus-Architektur kommunizieren.
Dieses Dokument beschreibt die Ziel-Architektur nach Abschluss der Migration (geplant Q2 2026). Der aktuelle Stand kann davon abweichen. Fuer den Ist-Zustand siehe die Seite "Migrations-Status".
Technologie-Stack
| Komponente | Technologie | Version | Status |
|---|---|---|---|
| Frontend | React + TypeScript | 18.3 | Produktiv |
| API Gateway | Node.js + Express | 20 LTS | Produktiv |
| Backend Services | PHP / Laravel | 11.x | Produktiv |
| Datenbank | PostgreSQL | 16 | Produktiv |
| Cache | Redis | 7.2 | Produktiv |
| Message Queue | RabbitMQ | 3.13 | Migration |
| Suche | Meilisearch | 1.7 | Beta |
Service-Uebersicht
Auth Service
Verwaltet Authentifizierung und Autorisierung. Unterstuetzt OAuth 2.0, SAML und LDAP-Integration. Stellt JWTs fuer die interne Service-Kommunikation aus.
Project Service
Kernservice fuer Projektverwaltung, Tickets und Workflows. Kommuniziert mit dem Event-Bus, um andere Services ueber Statusaenderungen zu informieren.
Notification Service
Asynchroner Service fuer E-Mail-, Push- und In-App-Benachrichtigungen. Verarbeitet Events vom Message-Bus und leitet sie an die entsprechenden Kanaele weiter.
API-Beispiel
const fetchProjects = async () => {
const response = await fetch('/api/v2/projects', {
headers: {
'Authorization': `Bearer ${token}`,
'Content-Type': 'application/json'
}
});
return response.json();
};
Deployment-Diagramm
Das Deployment erfolgt auf einem Hetzner Cloud Cluster mit drei Worker-Nodes. Die Container werden ueber GitLab CI/CD automatisch gebaut und deployt. Ein Blue-Green-Deployment-Verfahren stellt unterbrechungsfreie Updates sicher.
- Production: 3 Worker-Nodes, Load-Balanced
- Staging: 1 Worker-Node, automatisches Deployment bei Merge in
develop - Review-Apps: Ephemeral, pro Merge-Request
Naechste Schritte
- Migration des Message-Brokers von Redis Pub/Sub auf RabbitMQ (KW 14)
- Einfuehrung von Feature-Flags ueber einen zentralen Service (KW 16)
- Performance-Monitoring mit OpenTelemetry (KW 18)
- Dokumentation der Service-Contracts mit AsyncAPI (KW 20)