Files
git.stella-ops.org/docs/features/unchecked/router/router-streaming-data-transfer.md

1.3 KiB

Router Streaming Data Transfer

Module

Router

Status

IMPLEMENTED

Description

REQUEST_STREAM_DATA and RESPONSE_STREAM_DATA frame types for chunked streaming, backpressure handling via flow control, and streaming endpoint support in the Microservice SDK.

Implementation Details

  • Modules: src/Router/__Libraries/StellaOps.Router.Common/, src/Router/__Libraries/StellaOps.Microservice/
  • Key Classes:
    • RequestDispatcher (src/Router/__Libraries/StellaOps.Microservice/RequestDispatcher.cs) - handles streaming frame dispatch with backpressure
    • TypedEndpointAdapter (src/Router/__Libraries/StellaOps.Microservice/TypedEndpointAdapter.cs) - supports streaming request/response patterns
  • Frame Types: REQUEST_STREAM_DATA, RESPONSE_STREAM_DATA for chunked transfer
  • Source: batch_52/file_01.md

E2E Test Plan

  • Send a streaming request with multiple data chunks and verify the endpoint receives all chunks
  • Verify streaming response: send a request to a streaming endpoint and confirm chunked response delivery
  • Verify backpressure: send data faster than the receiver processes and confirm flow control signals
  • Verify large file streaming: transfer a large payload via streaming and confirm complete delivery
  • Verify streaming cancellation: cancel mid-stream and confirm resources are cleaned up