Bidirectional Streaming

Bidirectional Streaming

gRPC, WebSocket, HTTP/2, HTTP/3, SSE, reconnect strategies, HOL blocking.

65Articles
65Topics covered
Articles in this category

All 19 articles, sorted alphabetically

Advertisement
ARTICLE · 01

Backpressure architecture in bidirectional streams

Deep-dive on end-to-end backpressure: TCP/HTTP2/QUIC flow-control windows, gRPC readiness, Reactive Streams demand, WebSocket's bufferedAmount ga…

Read article →
ARTICLE · 02

QUIC connection migration architecture

Deep-dive on QUIC connection migration: Connection IDs decoupling identity from the four-tuple, path validation and anti-amplification limits, congest…

Read article →
ARTICLE · 03

Delivery and read receipts architecture

Deep-dive on delivery and read receipts in real-time messaging: server-assigned message identity, delivered and read acknowledgements flowing back ove…

Read article →
ARTICLE · 04

Real-time fanout -- delivering messages to many connections

Deep-dive on real-time fanout: the broadcast-to-many problem, the stateful connection layer (sharded WebSocket servers), the pub/sub backplane distrib…

Read article →
ARTICLE · 05

gRPC bidi streaming architecture

Deep-dive on gRPC bidirectional streaming: HTTP/2 framing, multiplexing, flow control, backpressure, deadlines, keepalive, and reconnect.

Read article →
ARTICLE · 06

Heartbeats / keepalive -- detecting dead connections

Deep-dive on heartbeats/keepalive for long-lived bidirectional connections: the silent-death problem, periodic ping/pong, timeout detection, reconnect…

Read article →
ARTICLE · 07

Load shedding on bidirectional streams

Deep-dive on load shedding for long-lived bidirectional streams (WebSocket, gRPC, WebTransport): deliberately dropping work the server cannot serve so…

Read article →
ARTICLE · 08

Long polling

Deep-dive on long polling: the hold-and-respond cycle, cursors for reliable gap-free delivery, timeout tuning against intermediaries, scaling held con…

Read article →
ARTICLE · 09

Long-polling fallback

Deep-dive on transport negotiation with long-polling fallback: the WebSocket-to-SSE-to-long-poll ladder, the server hub that presents one transport-ag…

Read article →
ARTICLE · 10

Bidi message ordering architecture

Deep-dive on ordered delivery over bidirectional streams: sequence numbers and send buffers, receive-side reorder windows, gap detection with NACK, de…

Read article →
ARTICLE · 11

MQTT architecture

Deep-dive on MQTT: the broker-and-topic publish/subscribe model, wildcard topic filters, the three QoS levels (at-most/at-least/exactly once), retaine…

Read article →
ARTICLE · 12

Stream multiplexing -- many logical streams over one connection

Deep-dive on stream multiplexing: the HTTP/1.1 connection-per-request problem, many concurrent streams over one connection, frames and stream ids inte…

Read article →
ARTICLE · 13

Offline message queue architecture

Deep-dive on the store-and-forward offline queue that keeps bidirectional clients gap-free across disconnects: a fanout writer that appends each messa…

Read article →
ARTICLE · 14

WebSocket compression architecture

Deep-dive on permessage-deflate: the offer/response extension negotiation, server_max_window_bits and client_max_window_bits sizing, context takeover …

Read article →
ARTICLE · 15

Real-time presence tracking architecture

Deep-dive on presence systems: heartbeat/TTL truth that eliminates ghosts, multi-session aggregation into a user status, state machines with grace win…

Read article →
ARTICLE · 16

Signaling architecture for real-time apps

Deep-dive on the signaling plane: stateless WebSocket workers, session stores and pub/sub routing, SDP offer/answer with trickle ICE, perfect negotiat…

Read article →
ARTICLE · 17

Socket.IO at scale

Deep-dive on scaling Socket.IO: polling-to-WebSocket upgrade, sticky sessions, namespaces and rooms, Redis adapter broadcast, reconnection storms, slo…

Read article →
ARTICLE · 18

Server-Sent Events (SSE)

A deep dive on Server-Sent Events: the long-lived text/event-stream response, the on-the-wire format of data/event/id/retry and heartbeat comments, th…

Read article →
ARTICLE · 19

Typing indicators architecture

Deep-dive on typing indicators in real-time chat: how to fan out ephemeral 'X is typing…' presence signals over a live connection without sp…

Read article →