Skip to content

BVaduva/telemetry-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IoT Telemetry Ingestion Service (PoC)

Java Spring Boot Status

Project Goal: A technical Proof of Concept (PoC) to evaluate Spring Boot 3 for high-performance IoT data ingestion. The core pipeline (Producer -> REST -> Validation) was successfully implemented to assess the framework's architecture.

📖 Read about my learning process, the implemented architecture, and why I ultimately concluded this PoC in the JOURNEY.md.

🏗️ System Architecture

The system simulates a complete IoT data pipeline, decoupled into a Producer (Client) and Consumer (Server).
(Note: Core logic is implemented and runnable. Extended database routing was scoped out after the PoC evaluation).

  • Client ("The Car"): A Python-based simulation engine that generates fluctuating sensor data (Speed, RPM, Battery Level) and streams it via HTTP POST.
  • Server (The Backend): A Spring Boot 3 REST API designed to receive, validate, and process the incoming telemetry stream.

Tech Stack

  • Core: Java 17 (Temurin)
  • Framework: Spring Boot 3 (Web MVC)
  • Build Automation: Maven (Wrapper included)
  • Simulation Client: Python 3 + requests
  • Environment: Developed on Fedora Linux (Zsh)

How to Run

1. Start the Backend Service

The project uses the Maven Wrapper, so no global Maven installation is required.

./mvnw spring-boot:run

2. Launch the Car Simulation

Simulate a driving vehicle sending live data:

# Setup Python Environment
python3 -m venv .venv
source .venv/bin/activate
pip install requests

# Start Telemetry Stream
python3 scripts/car_simulation.py

About

Scalable backend service for ingesting connected car telemetry data via REST. Built with Java 17 & Spring Boot 3, featuring a documented architectural learning path.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors