Projekt

Obecné

Profil

Architektura systému » Historie » Verze 17

Ondřej Váně, 2020-03-24 10:48

1 1 Ondřej Váně
h1. Architektura systému
2 2 Ondřej Váně
3 5 Ondřej Váně
* Systému bude rozdělen do třech základních částí, které mezi sebou budou komunikovat pomocí REST API (JSON).
4 6 Ondřej Váně
** Frontend - Angular, TypeScript
5
** Backend - Spring, Java
6
** Souborová databáze - Apache Solr
7 7 Ondřej Váně
* Každá jednotlivá část bude spuštěna v dockeru kontejneru. 
8 8 Ondřej Váně
* Architektura systému je znázorněna na obrázku níže.
9 3 Ondřej Váně
10 4 Ondřej Váně
!architecture.png!
11 9 Ondřej Váně
12 10 Ondřej Váně
h1. Komunikační protokol v.1
13 11 Ondřej Váně
14
* Jednotlivé zprávy budou zasílány ve fromátu JSON
15
* Komunikace bude probíhat pomocí HTTP protokolu
16
* Budou využívány návratové HTTP kódy stavů (200, 400, 500, atd.) - později bude upřesněno
17
* Návrh komunikace na obrázku níže,
18
19
!kom_protokol.png!
20 12 Ondřej Váně
21
* Struktura jednotlivých zpráv
22
** Query message:
23 14 Ondřej Váně
<pre><code class="json">
24
{ 
25 15 Ondřej Váně
	"query": "hledaný výraz", 
26
	"date": "čas odeslání dotazu" 
27
	
28
}
29
</code></pre>
30
31
** Query to Solr message:
32
<pre><code class="json">
33
{ 
34 17 Ondřej Váně
	"query": "Pole pro vyhledávání : hledaný výraz"
35 15 Ondřej Váně
	
36
}
37
</code></pre>
38
39
** Query result from Solr:
40
<pre><code class="json">
41 16 Ondřej Váně
IdDocumnet: "id dokumentu"
42
TextRegion: 
43
    {
44
    PlainText:"text line 1",
45
    Coords: "koordináty"
46
    },
47
TextLine: [ 
48
    {
49
        PlainText:"text line 1",
50
        Coords: "koordináty"
51
    },
52
    {
53
        PlainText:"text line 1",
54
        Coords: "koordináty"
55
    }
56
    ],
57
TextWord:[
58
     {
59
            PlainText:"text word 1",
60
            Coords: "koordináty"
61
      },
62
      {
63
            PlainText:"text word 2",
64
            Coords: "koordináty"
65
      }
66
 ]
67 15 Ondřej Váně
</code></pre>
68
69
** Query response:
70
<pre><code class="json">
71
{ 
72
	"query": "hledaný výraz", 
73
	"date": "čas odeslání dotazu" 
74 14 Ondřej Váně
	
75
}
76 13 Ondřej Váně
</code></pre>