Skip to content

Tech Stack Selection Matrix ​

A comparative analysis of the technologies used for this futuristic project is provided below. This matrix outlines exactly why each specific technology was chosen.

CategorySelected TechnologyRole / PurposeJustification
API GatewayNGINX / EnvoyInitial entry point and load balancing for data arriving from edge devices.Excellent support for mTLS, ensuring high performance and a Zero-Trust security foundation.
Message BrokerApache KafkaReceives real-time data streams and forwards them to processing nodes without packet loss.Allows unlimited scaling through partitioning. Ensures robust data persistency.
Compute NodesRust & GoConsumes data from Kafka, processes it rapidly, and sends it to the database.Offers memory safety, multi-threading capabilities, and ultra-low latency (See ADR-0002).
In-Memory CacheRedisExtremely fast memory access for session management and storing transient data.Capable of reading/writing data with sub-millisecond latency.
Relational DatabasePostgreSQLQuantum state tracking and complex relational queries.Strong ACID compliance and excellent JSONB support for unstructured data (See ADR-0001).
Container OrchestrationKubernetes (K8s)Manages the entire microservice ecosystem and handles auto-scaling.Can effortlessly manage traffic spikes via Horizontal Pod Autoscaling (HPA).
Security LayerOAuth2 & mTLSDevice authentication and network traffic encryption.Industry standards for implementing a Zero-Trust architecture.

Matrix Summary ​

Each of these technologies complements the others. For example, Kafka prevents data loss, Rust processes that data quickly, Redis increases speed through caching, and PostgreSQL maintains data integrity.

Released under the MIT License.