Skip to content

Architecture

Ralph Schaer edited this page Apr 28, 2026 · 8 revisions

Architecture

The wamp2spring architecture is centered around Spring messaging channels. Transport adapters deserialize inbound WAMP frames, enrich them with transport and session metadata, and forward them into broker, dealer, and auxiliary processing components.

At a high level:

  • Transport adapters accept WebSocket frames and, on the servlet stack, optional long-poll requests
  • Session support establishes WAMP sessions, carries the client-supplied realm value as session metadata, negotiates authentication, and publishes lifecycle events
  • Broker components handle subscriptions, publications, filtering, and event-oriented meta features
  • Dealer components handle registrations, invocations, progressive results, cancellation, timeouts, and RPC-oriented meta features
  • Spring-managed beans annotated with @WampProcedure and @WampListener integrate application code into the routing flow
  • WampPublisher provides the inverse direction for server-side publication into the broker

The transport and routing layers are decoupled so the same core semantics are shared across servlet and reactive deployments. Routing is performed in a single shared scope rather than being partitioned by realm.

wamp2spring overview

Related diagrams

  • Auxiliary for connection setup, session management, and shared support components
  • RPC for dealer and procedure routing
  • Publish/Subscribe for broker and event routing

Clone this wiki locally