aboutsummaryrefslogtreecommitdiff
path: root/docs/ref/proto/index.md
blob: e7a4619f11323166e8ebdbb97285df2238cbbb4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# Protocols

{{hi:protocol}}
The Scalability Protocols are a principally a collection of common networking
patterns found in applications.

The following patterns are included:

## Request - Reply

The {{i:request/reply pattern}} is made up of the [_REQ_][req] and [_REP_][rep] protocols.
This most often used when implementing RPC-like services, where
a given request is matched by a single reply.

## Pipeline

The {{i:pipeline pattern}} is made up of the [_PUSH_][push] and [_PULL_][pull]
protocols.

In this pattern communication is {{i:half-duplex}}, in that one side sends
data and another side receives.

This pattern is also characterized by its ability to solve distribution
problems, and the fact that it has {{i:back-pressure}}, providing a measure
of {{i:flow control}} to data production and consumption.

## Publish - Subscribe

## Bus

## Pair

[bus]: bus.md
[pair]: pair.md
[push]: push.md
[pull]: pull.md
[req]: req.md
[rep]: rep.md
[sub]: sub.md
[pub]: pub.md
[respondent]: respondent.md
[surveyor]: surveyor.md