summaryrefslogtreecommitdiff
path: root/centralizedpubsub_dot.dot
blob: 2e5f42e7503b116b2d2e59d2a6ce41cc4ccbab4d (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
digraph basicpubsub {
    graph [margin=0];
    overlap=scale;
    rankdir=LR;

    subgraph cluster_publishers {
        graph [label="Publishers"];

        {node [label="1"] pub1};
        {node [label="2"] pub2};
        {node [label="3"] pub3};
    }

    subgraph cluster_msgsys {
        graph [label="Virtual bus", style="dashed, filled", fillcolor="#00000015"];

        {node [shape=record, label="Messaging service | { Storage | <interests> Interests }"] service};
    }

    pub2->service:w [label="publish(event A)"];
    pub3->service:w [label="publish(event B)"];

    subgraph cluster_subscribers {
        graph [label="Subscribers"];

        {node [label="1"] sub1};
        {node [label="2"] sub2};
        {node [label="3"] sub3};
    }

    sub1->service:interests [label="register"];

    service:e->sub2 [label="deliver(event A)"];
    service:e->sub3 [label="deliver(event A)"];
}