Projekt

Obecné

Profil

Architektura systému » Historie » Revize 19

Revize 18 (Ondřej Váně, 2020-03-24 10:49) → Revize 19/41 (Ondřej Váně, 2020-03-24 10:49)

h1. Architektura systému 

 * Systému bude rozdělen do třech základních částí, které mezi sebou budou komunikovat pomocí REST API (JSON). 
 ** Frontend - Angular, TypeScript 
 ** Backend - Spring, Java 
 ** Souborová databáze - Apache Solr 
 * Každá jednotlivá část bude spuštěna v dockeru kontejneru.  
 * Architektura systému je znázorněna na obrázku níže. 

 !architecture.png! 

 h1. Komunikační protokol v.1 

 * Jednotlivé zprávy budou zasílány ve fromátu JSON 
 * Komunikace bude probíhat pomocí HTTP protokolu 
 * Budou využívány návratové HTTP kódy stavů (200, 400, 500, atd.) - později bude upřesněno 
 * Návrh komunikace na obrázku níže, 

 !kom_protokol.png! 

 * Struktura jednotlivých zpráv 
 

 ** Query message: 
 <pre><code class="json"> 
 {  
	 "query": "hledaný výraz",  
	 "date": "čas odeslání dotazu"  
	
 } 
 </code></pre> 
 

 ** Query to Solr message: 
 <pre><code class="json"> 
 {  
	 "query": "Pole pro vyhledávání : hledaný výraz" 
	
 } 
 </code></pre> 
 

 ** Query result from Solr: 
 <pre><code class="json"> 
 { 
 IdDocumnet: "id dokumentu" 
 TextRegion:  
     { 
     PlainText:"text line 1", 
     Coords: "koordináty" 
     }, 
 TextLine: [  
     { 
         PlainText:"text line 1", 
         Coords: "koordináty" 
     }, 
     { 
         PlainText:"text line 1", 
         Coords: "koordináty" 
     } 
     ], 
 TextWord:[ 
      { 
             PlainText:"text word 1", 
             Coords: "koordináty" 
       }, 
       { 
             PlainText:"text word 2", 
             Coords: "koordináty" 
       } 
  ]} ] 
 </code></pre> 

 ** Query response: 
 <pre><code class="json"> 
 {  
	 "query": "hledaný výraz",  
	 "date": "čas odeslání dotazu"  
	
 } 
 </code></pre>