Introduction
Overview of OqronKit v1 Enterprise Release
Introduction to OqronKit
OqronKit is an industry-grade, crash-safe, and framework-agnostic backend orchestration and distributed processing engine for Node.js.
The Problem
Modern distributed systems require robust mechanisms for background computation. Developers often face challenges with:
- Scaling: Moving from a monolithic application to a decoupled microservice architecture often requires significant code rewrites.
- Reliability: Ensuring jobs are not lost when worker processes crash (e.g., OOM errors, SIGKILL).
- Consistency: Maintaining state and strict idempotency across distributed nodes.
- Tooling Sprawl: Piecing together disparate libraries for queuing, batching, rate limiting, and workflows.
The OqronKit Solution
OqronKit solves these challenges by providing a unified, adapter-driven architecture with 12 core enterprise modules.
Core Architectural Philosophy
- Native Horizontal Scaling & Microservices: Every module is natively designed for massive horizontal scaling. Using an In-Memory adapter runs the code cleanly as a monolith on one server. Connecting a Redis/Postgres adapter instantly transforms the application into a decoupled, distributed microservice architecture without changing the business logic.
- Server Independence (Senders vs Processors): Senders (API Nodes) and Processors (Worker Nodes) are strictly decoupled. A module definition can exist purely as a
produceror aconsumer. - Adapter-Driven Architecture (No Direct DB Calls): All interaction with persistence layers routes through standard adapters (
IOqronAdapter,ILockAdapter,IQueueAdapter), ensuring framework agnosticism. - Crash-Safety via Heartbeat Locks: Built-in
StallDetectorand heartbeat intervals ensure that jobs from crashed workers are automatically reclaimed and retried safely. - Strict Idempotency: Guaranteed state consistency before and immediately after job/step completions.
The 12 Enterprise Modules
- Task Queue: Unified, simple queue for monolithic setups.
- Distributed Worker: Decoupled queue pushing and worker polling.
- Batch: Accumulator buffering (
maxSizeormaxWaitMs). - RateLimit: Sliding-window distributed limits.
- Workflow (DAG): Complex dependency grids.
- Stack: LIFO rollback migration sequences.
- Saga: Distributed microservice transactions with compensation chains.
- Pipeline: Streaming ETL with backpressure.
- Webhook: Webhook dispatch with DLQ and cryptographic signing.
- PubSub: Durable topics and fan-out consumer groups.
- Cache: Stampede-protected hierarchical memory tiers.
- Ingest: Ultra-fast, low-latency event-driven functions (similar to Inngest).