Skip to content

CHINTHAN03/orbital-engine

Repository files navigation

🛰️ Orbital Telemetry & Collision Avoidance Engine

A Zero-Allocation, Lock-Free Distributed Spatial Engine

Java 21 LMAX Disruptor Kafka FFM API TimescaleDB


Overview

The Orbital Engine is an ultra-low latency, deterministically bounded backend pipeline designed exclusively for high-throughput spatial telemetry tracking. Standard distributed systems utilizing Spring Boot process JSON inside bloated memory heaps, leading to disastrous Garbage Collection (GC) pauses.

When tracking millions of LEO Satellites, drones, or Autonomous Vehicles, a 200ms GC pause could mean a physical space collision.

This engine entirely abandons traditional objects. Utilizing Java 21's Foreign Function & Memory (FFM) API and the LMAX Disruptor, it injects data directly into raw OS-level memory slabs natively mapped to C-style Structs, processing thousands of complex Euler physics calculations per second on a single, locked CPU core while achieving exactly zero GC events.

System Demonstration

orbital.mp4

Screenshot of the Demonstration Screenshot 2026-04-16 150436

Technical Architecture

This repository strictly enforces a multi-module Directed Acyclic Graph (DAG) for mechanical sympathy and architectural boundaries.

  1. Ingress (orbital-ingest): Consumes 56-byte binary structures out of an Apache Kafka firehose utilizing Java Virtual Threads (Project Loom). It ensures no OS-carrier thread is ever blocked by network I/O.
  2. Core Context (orbital-core): Provides the root FFM Memory Segments. It natively defines spatial layout maps ([x,y,z][vx,vy,vz]) bounded securely outside the JVM heap.
  3. Physics Interactor (orbital-physics): Pinned to a single hot CPU core utilizing the algorithmic LMAX Disruptor Ring Buffer. Integrates spatial bounds dynamically in under 0.02ms latency per tick.
  4. Egress Handler (orbital-egress): Executes JDBC Parallel Array Batching into TimescaleDB using HikariCP, whilst concurrently piping a live stream to a massive WebSockets dashboard via Javalin.
  5. Presentation (public): A zero-dependency, utilitarian aerospace dashboard constructed in Three.js simulating Palantir/SpaceX Mission Control graphics.

Quick Start Installation

You must have Docker and a JDK 21+ environment set configured with your path.

1. Boot Core Infrastructure

This automatically configures local Apache Kafka brokers and the PostGIS/Timescale database tables.

docker-compose up -d

2. Ignition

To run the LMAX engine safely, you must pass the Java 21 preview restrictions so the JVM permits native memory manipulation. (Handled automatically by the Gradle script).

./gradlew :orbital-bootstrap:run

The command line will block and state: AWAITING NATIVE INTERCEPT.

3. Simulator Launch

Open a totally independent terminal window. Trigger the internal TelemetrySimulator tool. It generates mathematically correct satellite velocities and pumps the binary payloads straight to localhost Kafka.

./gradlew :orbital-ingest:runSimulator

4. Open the Command Center

Navigate your browser directly to: http://localhost:8080


Technical Documentation Directory

If you wish to study the exact internal mechanics, mechanical sympathy concepts, or the specific codebase breakdown of how the modules interlock natively, study the documentation guides:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors