4.1. Úvodní informace o aplikaci

4.1.1. Architektura

Elza je webová aplikace s vícevrstvou architekturou:

  • Server - aplikace v jazyce Java (Spring Boot) s vloženým webovým serverem Tomcat, distribuovaná jako jediný spustitelný soubor JAR. Samostatný aplikační server není potřeba.

  • Databáze - PostgreSQL s rozšířením PostGIS. Databázové schéma se vytváří a aktualizuje automaticky při startu aplikace (Liquibase).

  • Pracovní adresář - adresář v souborovém systému serveru pro binární soubory (přílohy, vygenerované výstupy, publikace, importní dávky), balíčky pravidel, logy a další pracovní data.

  • Klient - jednostránková webová aplikace (React) běžící v prohlížeči uživatele. Se serverem komunikuje přes rozhraní REST a oznámení přijímá přes WebSocket (STOMP, cesta /stomp).

Elza může být integrována s dalšími systémy, zejména s Centrálním archivním modulem (CAM) Národního archivního portálu pro archivní entity, s digitálními archivy a úložišti digitalizátů a s publikačními systémy. Viz Integrace.

Typové nasazení

Uživatelé přistupují k aplikaci přes webový server v roli reverzní proxy, který zajišťuje HTTPS a předává požadavky na HTTP port aplikace Elza. Samotná Elza nemusí být mimo server dostupná.

uživatelé --HTTPS/443--> Apache HTTPD / NGINX --HTTP/8080--> Elza --> PostgreSQL
                          (certifikáty,                        |
                           reverzní proxy)                     +--HTTPS--> CAM, digitální archiv, ...

Webový server může běžet na stejném nebo na samostatném serveru. Viz Provoz za reverzní proxy.

4.1.2. Požadavky na server

Hardware

Prostředek

Minimální

Doporučené

RAM

4 GB

8 GB

Počet jader CPU

2

4

Místo na disku pro aplikaci

4 GB

16 GB

Místo na disku pro databázi

15 GB

60 GB

Minimální hodnoty jsou vhodné pro testování a vývoj. Doporučené hodnoty odpovídají produkční instanci specializovaného archivu s přibližně deseti současně pracujícími uživateli. Zátěž je dána zejména:

  • počtem současně pracujících uživatelů,

  • velikostí největšího archivního souboru (počtem jednotek popisu),

  • celkovým počtem archivních souborů,

  • počtem archivních entit (zejména při napojení na CAM),

  • velikostí generovaných výstupů a připojených souborů.

Software

Komponenta

Verze

Operační systém

Linux (doporučeno) nebo Windows

Java

17

PostgreSQL

12 nebo vyšší, s rozšířením PostGIS

Jedinou podporovanou databází pro produkční provoz je PostgreSQL s rozšířením PostGIS. Vložená databáze H2 slouží pouze pro automatické testy.

4.1.3. Požadavky na klienta

  • Aktuální verze prohlížeče Google Chrome, Mozilla Firefox nebo Microsoft Edge. Apple Safari je podporován částečně.

  • Rozlišení obrazovky alespoň 1280 x 800, doporučeno 1920 x 1080.

  • Přibližně 1 GB RAM pro záložku prohlížeče s aplikací.