summaryrefslogtreecommitdiff
path: root/_images/arch_public.svg
blob: 0a0a79ae2e1b558fdac7f0d1366c6229ae2f4f09 (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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.43.0 (0)
 -->
<!-- Title: G Pages: 1 -->
<svg width="543pt" height="401pt"
 viewBox="0.00 0.00 543.00 401.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 397)">
<title>G</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-397 539,-397 539,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_searxng</title>
<polygon fill="#fafafa" stroke="black" points="8,-8 8,-316 527,-316 527,-8 8,-8"/>
<text text-anchor="middle" x="267.5" y="-300.8" font-family="Sans" font-size="14.00">SearXNG instance</text>
</g>
<!-- browser -->
<g id="node1" class="node">
<title>browser</title>
<polygon fill="aliceblue" stroke="black" points="108,-393 48,-393 48,-397 36,-397 36,-357 108,-357 108,-393"/>
<polyline fill="none" stroke="black" points="36,-393 48,-393 "/>
<text text-anchor="middle" x="72" y="-371.3" font-family="Sans" font-size="14.00">browser</text>
</g>
<!-- rp -->
<g id="node2" class="node">
<title>rp</title>
<polygon fill="#ffffcc" stroke="black" points="128,-285 16,-285 16,-249 128,-249 128,-285"/>
<text text-anchor="middle" x="72" y="-263.3" font-family="Sans" font-size="14.00">reverse proxy</text>
</g>
<!-- browser&#45;&gt;rp -->
<g id="edge1" class="edge">
<title>browser&#45;&gt;rp</title>
<path fill="none" stroke="black" d="M72,-356.97C72,-340.38 72,-314.88 72,-295.43"/>
<polygon fill="black" stroke="black" points="75.5,-295.34 72,-285.34 68.5,-295.34 75.5,-295.34"/>
<text text-anchor="middle" x="94.5" y="-327.8" font-family="Sans" font-size="14.00">HTTPS</text>
</g>
<!-- static -->
<g id="node3" class="node">
<title>static</title>
<g id="a_node3"><a xlink:href="url to configure static files" xlink:title="static files">
<polygon fill="lightgray" stroke="black" points="518.5,-285 515.5,-289 494.5,-289 491.5,-285 431.5,-285 431.5,-249 518.5,-249 518.5,-285"/>
<text text-anchor="middle" x="475" y="-263.3" font-family="Sans" font-size="14.00">static files</text>
</a>
</g>
</g>
<!-- rp&#45;&gt;static -->
<g id="edge2" class="edge">
<title>rp&#45;&gt;static</title>
<path fill="none" stroke="black" d="M128.04,-267C205.6,-267 344.74,-267 421.13,-267"/>
<polygon fill="slategray" stroke="black" points="421.48,-270.5 431.48,-267 421.48,-263.5 421.48,-270.5"/>
<text text-anchor="middle" x="279.75" y="-273.8" font-family="Sans" font-size="14.00" fill="slategray">optional: reverse proxy serves static files</text>
</g>
<!-- uwsgi -->
<g id="node4" class="node">
<title>uwsgi</title>
<g id="a_node4"><a xlink:href="https://docs.searxng.org/utils/searx.sh.html" xlink:title="uwsgi">
<polygon fill="#ffffcc" stroke="black" points="244.14,-198 158.02,-198 135.86,-162 221.98,-162 244.14,-198"/>
<text text-anchor="middle" x="190" y="-176.3" font-family="Sans" font-size="14.00">uwsgi</text>
</a>
</g>
</g>
<!-- rp&#45;&gt;uwsgi -->
<g id="edge3" class="edge">
<title>rp&#45;&gt;uwsgi</title>
<path fill="none" stroke="black" d="M95.88,-248.8C113.71,-235.95 138.28,-218.26 157.84,-204.17"/>
<polygon fill="black" stroke="black" points="160.09,-206.86 166.16,-198.18 156,-201.18 160.09,-206.86"/>
<text text-anchor="middle" x="240.5" y="-219.8" font-family="Sans" font-size="14.00">http:// (tcp) or unix:// (socket)</text>
</g>
<!-- searxng1 -->
<g id="node6" class="node">
<title>searxng1</title>
<polygon fill="#ffffcc" stroke="black" points="120,-125 16,-125 16,-89 120,-89 120,-125"/>
<text text-anchor="middle" x="68" y="-103.3" font-family="Sans" font-size="14.00" fill="#0000cd">SearXNG #1</text>
</g>
<!-- uwsgi&#45;&gt;searxng1 -->
<g id="edge4" class="edge">
<title>uwsgi&#45;&gt;searxng1</title>
<path fill="none" stroke="black" d="M160.78,-161.99C144.45,-152.49 123.91,-140.54 106.31,-130.29"/>
<polygon fill="black" stroke="black" points="107.81,-127.12 97.41,-125.11 104.29,-133.17 107.81,-127.12"/>
</g>
<!-- searxng2 -->
<g id="node7" class="node">
<title>searxng2</title>
<polygon fill="#ffffcc" stroke="black" points="242,-125 138,-125 138,-89 242,-89 242,-125"/>
<text text-anchor="middle" x="190" y="-103.3" font-family="Sans" font-size="14.00" fill="#0000cd">SearXNG #2</text>
</g>
<!-- uwsgi&#45;&gt;searxng2 -->
<g id="edge6" class="edge">
<title>uwsgi&#45;&gt;searxng2</title>
<path fill="none" stroke="black" d="M190,-161.81C190,-153.79 190,-144.05 190,-135.07"/>
<polygon fill="black" stroke="black" points="193.5,-135.03 190,-125.03 186.5,-135.03 193.5,-135.03"/>
</g>
<!-- searxng3 -->
<g id="node8" class="node">
<title>searxng3</title>
<polygon fill="#ffffcc" stroke="black" points="364,-125 260,-125 260,-89 364,-89 364,-125"/>
<text text-anchor="middle" x="312" y="-103.3" font-family="Sans" font-size="14.00" fill="#0000cd">SearXNG #3</text>
</g>
<!-- uwsgi&#45;&gt;searxng3 -->
<g id="edge8" class="edge">
<title>uwsgi&#45;&gt;searxng3</title>
<path fill="none" stroke="black" d="M219.22,-161.99C235.55,-152.49 256.09,-140.54 273.69,-130.29"/>
<polygon fill="black" stroke="black" points="275.71,-133.17 282.59,-125.11 272.19,-127.12 275.71,-133.17"/>
</g>
<!-- searxng4 -->
<g id="node9" class="node">
<title>searxng4</title>
<polygon fill="#ffffcc" stroke="black" points="486,-125 382,-125 382,-89 486,-89 486,-125"/>
<text text-anchor="middle" x="434" y="-103.3" font-family="Sans" font-size="14.00" fill="#0000cd">SearXNG #4</text>
</g>
<!-- uwsgi&#45;&gt;searxng4 -->
<g id="edge10" class="edge">
<title>uwsgi&#45;&gt;searxng4</title>
<path fill="none" stroke="black" d="M226,-168.52C264.37,-157.36 325.82,-139.48 372,-126.04"/>
<polygon fill="black" stroke="black" points="372.99,-129.4 381.61,-123.24 371.03,-122.68 372.99,-129.4"/>
</g>
<!-- redis -->
<g id="node5" class="node">
<title>redis</title>
<path fill="#ffffcc" stroke="black" d="M288.5,-48.73C288.5,-50.53 271.69,-52 251,-52 230.31,-52 213.5,-50.53 213.5,-48.73 213.5,-48.73 213.5,-19.27 213.5,-19.27 213.5,-17.47 230.31,-16 251,-16 271.69,-16 288.5,-17.47 288.5,-19.27 288.5,-19.27 288.5,-48.73 288.5,-48.73"/>
<path fill="none" stroke="black" d="M288.5,-48.73C288.5,-46.92 271.69,-45.45 251,-45.45 230.31,-45.45 213.5,-46.92 213.5,-48.73"/>
<text text-anchor="middle" x="251" y="-30.3" font-family="Sans" font-size="14.00">redis DB</text>
</g>
<!-- searxng1&#45;&gt;redis -->
<g id="edge5" class="edge">
<title>searxng1&#45;&gt;redis</title>
<path fill="none" stroke="black" d="M111.83,-88.99C139.55,-78.24 175.36,-64.35 203.71,-53.35"/>
<polygon fill="black" stroke="black" points="205.35,-56.47 213.4,-49.59 202.81,-49.94 205.35,-56.47"/>
</g>
<!-- searxng2&#45;&gt;redis -->
<g id="edge7" class="edge">
<title>searxng2&#45;&gt;redis</title>
<path fill="none" stroke="black" d="M204.77,-88.81C212.26,-80.09 221.5,-69.34 229.74,-59.75"/>
<polygon fill="black" stroke="black" points="232.51,-61.89 236.37,-52.03 227.2,-57.33 232.51,-61.89"/>
</g>
<!-- searxng3&#45;&gt;redis -->
<g id="edge9" class="edge">
<title>searxng3&#45;&gt;redis</title>
<path fill="none" stroke="black" d="M297.23,-88.81C289.74,-80.09 280.5,-69.34 272.26,-59.75"/>
<polygon fill="black" stroke="black" points="274.8,-57.33 265.63,-52.03 269.49,-61.89 274.8,-57.33"/>
</g>
<!-- searxng4&#45;&gt;redis -->
<g id="edge11" class="edge">
<title>searxng4&#45;&gt;redis</title>
<path fill="none" stroke="black" d="M390.17,-88.99C362.45,-78.24 326.64,-64.35 298.29,-53.35"/>
<polygon fill="black" stroke="black" points="299.19,-49.94 288.6,-49.59 296.65,-56.47 299.19,-49.94"/>
</g>
</g>
</svg>