# IT:AD:SignalR/Glossary #
* [[../|(UP)]]
{{indexmenu>.#2|nsort tsort}}
## Terms ##
#### Backplane
The term *"Backplane"* comes from the electrical world, where a *"BackPlane"* (or *"backplane system"*) is a group of electrical connectors in parallel with each other, so that each pin of each connector is linked to the same relative pin of all the other connectors forming a computer *bus*.
In SignalR, it's the messaging bus used to ensure that message from one server are transmitted to all other servers.
Each server instance connects to the backplane through the bus. When a message is sent, it goes to the backplane, and the backplane sends it to every server (and when a server gets a message from the backplane, it puts the message in its local cache. The server then delivers messages to clients from its local cache).

The SignalR backplanes replace the default `IMessageBus` with a bus designed for that backplane.
* SignalR Scaleout with Azure Service Bus
* SignalR Scaleout with Redis, using the Redis pub/sub mechanism.
* SignalR Scaleout with SQL Server
In SignalR, every message is sent through a message bus. A message bus implements the IMessageBus interface, which provides a publish/subscribe abstraction.
For each client connection, the client’s progress in reading the message stream is tracked using a cursor. (A cursor represents a position in the message stream.) If a client disconnects and then reconnects, it asks the bus for any messages that arrived after the client’s cursor value. The same thing happens when a connection uses long polling. After a long poll request completes, the client opens a new connection and asks for messages that arrived after the cursor.
The cursor mechanism works even if a client is routed to a different server on reconnect. The backplane is aware of all the servers, and it doesn't matter which server a client connects to.
### Hub
The Hub class is used to define methods the clients can call on the server.
### Scaleout
Scaleout is done using a [[#Backplate/]]. It can be implemented using one of the following mechanisms:
* SignalR Scaleout with Azure Service Bus
* SignalR Scaleout with Redis, using the Redis pub/sub mechanism.
* SignalR Scaleout with SQL Server