Repository map
Gitops
- Gitops repository to manage deployments: Each component has its own kustomize yaml file, and different environment configurations are also defined. See repository readme.
Order processing
- Order management microservice with user interface to enter orders. This project illustrates the Transactional OutBox pattern combined with Debezium Change data capture from Postgresql database to Kafka.
- Order shipment optimizer with Decision Optimization (CPLEX). This is a python flask application exposing REST API but also consuming events from different topic to maintain internal view of the data needed for the optimization execution. CPLEX runs on Cloud Pak for Data or on IBM Cloud service
- Transportation table and simulator a simple simulator to present the transportation route and cost to be used by the order optimization component.
Cold chain monitoring
Refrigerator monitoring to assess cold chain and anomaly detection: this is a quarkus app, with microprofile and reactive messaging. It use Kafka Streams with Ktable, interactive query to compute the mumber of temperature violation per container. It optionally calls the anomaly detection model deployed on Watson ML.
Simulate Refrigerator telemetries. The simulator component is a Python-based application for generating anomalous data events for refrigerated containers. It is controlled by a REST API for triggering the cold chain demo.
Freezer manager to process alerts and broadcast them to server side events. Support also other operations and Resources for managing the Freezer entity.