Internal Architecture¶
Lightbus' internal workings are composed of:
- The user-facing API. This is provided by the BusClientclass, which then makes use of theEventClientandRpcResultClientclasses. This is a friendly API that issues helpful errors where appropriate. This also orchestrates system startup and shutdown.
- An internal message queuing system. This includes four separate internal message queues plus the EventDock&RpcResultDockclasses. The message queues provide the internal communication medium between the user-facing API and the Lightbus backend. TheEventDock&RpcResultDockclasses convert these messages into a simplified API for implementation by the transports. TheEventDockcontains theEventTransport, and theRpcResultDockcontains both theRpcTransportandRpcResultTransport.
- The Event & RPC transports implement Lightbus functionality for a specific backend (e.g. Redis). The main transports 
  shipped with Lightbus are the RedisEventTransport,RedisRpcTransport, andRedisResultTransport.
Diagram¶
