System Architecture Diagram

High-level architectural diagram of ACME Mobility displaying component boundaries, communication protocols, and technology stack:

System Architecture Diagram ACME Mobility

Click image to enlarge

Docker Network Isolation

The Docker Compose setup isolates services across three distinct bridge networks to ensure strict boundary separation and security:

acme-net

Primary domain network. Connects Frontend, Rental Service, Jolie Bank Services, Stations Service, Maintenance Service, and Fleet Gateway.

camunda

Process orchestration network. Connects Camunda 8 (Zeebe engine) with Rental Service for job execution and message correlation.

fleet-management-net

Fleet internal network. Isolates high-frequency gRPC telemetry calls between Fleet Gateway, Tracking Service, and Battery Service.

Persistence & Data Layer

Component Technology Managed Data
PostgreSQL Rental PostgreSQL 18 (:5432) Users, BPMN sessions, vehicle fleet, Bologna stations, active bookings, and rental history.
PostgreSQL Bank PostgreSQL 18 (:5433) Bank accounts, account balances, pre-authorized deposit locks, and UUID bank tokens.
Zeebe / Camunda Storage H2 (file) + Docker Volumes BPMN process instance state, process variables, active jobs, and execution history.
Redis Cache / PubSub Redis 7 (:6379) Asynchronous event decoupling, Pub/Sub messaging between workers, and Server-Sent Events (SSE).
Introduction Microservices & API