4.1. Úvodní informace o aplikaci

Aplikace Elza je aplikace pro zpracování archiválií a přípravu archivních pomůcek. V této kapitole jsou popsány její základní technické vlastnoti a požadavky pro její provoz.

Aplikace je k dispozici ve třech formách:

Instalátor pro MS Windows

vhodné pro ověřování funkcí aplikace na desktopu

Připravené binární balíčky

vhodné pro produkční prostředí

Ve formě zdrojového kódu

vhodné pro další vývoj a případnou customizaci

4.1.1. Charakteristika aplikace

Software Elza je webová aplikace s vícevrstevnou architekturou. Data jsou ukládána do relační databáze. Server je Java aplikace vyžadující pro pro provoz Java Servlet kontejner (Apache Tomcat, Jetty). Uživatelské rozhraní je dostupné formou webové aplikace. Ta je vytvořena pomocí technologie HTML5 a JavaScript/React. Komunikace mezi uživatelským rozhraním a serverovou částí je postavena na principu REST rozhraní a pro některé části využívá technologii WebSocket.

Aplikace Elza může být integrována s dalšími systémy, jako jsou systémy pro správu přístupových bodů (CAM), či systémy pro práci s digitalizáty a digitálními archivy.

Instalace a komunikace s okolím

Následující schéma ukazuje příklad instalace aplikace na virtuální server.

node "Virtuální server" {
  portin "HTTPS/443"
  component HTTPD [
    Apache Httpd nebo NGINX
    ----
    Certifikáty pro HTTPS
    Reverzní proxy
  ]
  "HTTPS/443" --> HTTPD
  component Elza [
    Elza
    ----
    Java 17
  ]
  database Databáze [
     Databáze
     ----
     PostgreSQL 12+
  ]
  HTTPD --> Elza : HTTP/8080
  Elza --> Databáze
}

cloud CAM [
    Centrální Archivní Modul (CAM)
    ----
    Součást Národního Archivního Portálu
]
Elza -right-> CAM : HTTPS

Příklad způsobu instalace

Poměrně obvyklou variantou k uvedenému příkladu je řešení, kdy webový server (Apache HTTPD, NGINX, IIS) je instalován na jiném serveru a na virtuálním serveru je nainstalována jen aplikace Elza. V takovém případě je server čistě aplikační a uživatelé k němu přímo nepřistupují, jen prostřednictvím samostatného webového serveru na nějž je směrováno URL, např. https://elza.organizace.cz.

4.1.2. Server

Hardwarové požadavky

Požadavky

Minimální

Doporučené

Velikost RAM

4GB

8GB

Dostupné místo na disku

4GB

16GB

Rezervované místo pro databázi

15GB

60GB

Hardwarové požadavky vycházejí z předpokládané zátěže jedné instance aplikace.

Zátěž je dána zejména těmito faktory:
  • počet současně pracujících uživatelů

  • maximální velikost jednoho archivního souboru (počet jednotek popisu)

  • množství archivních entit (napojení na CAM)

Softwarové požadavky

Požadavky

Verze

Java

17

Databázový server PostgreSQL

12 a vyšší

Uložení dat

Doporučeným a podporovaným databázovým serverem je PostgreSQL s rozšířením PostGIS pro uložení souřadnic.

Pro testování je možné používat embedded databázi H2.

Je možné uvažovat o použití i jiných databází (např: Microsoft SQL Server, Oracle), musí umožňovat tyto funkce:

  • existence JDBC ovladačů

  • podpora v nástroji LiquiBase

  • podpora Common Table Expression s rekurzivními dotazy

  • podpora datového typu Geometry

  • podpora pro podmíněné indexy

V případě potřeby provozu aplikace na jiné databázové platformě je nutné samostatně aplikaci sestavit ze zdrojového kódu a provést úpravu DB schématu.

4.1.3. Klientská aplikace

Hardwarové požadavky

Požadavky

Minimální

Doporučené

Rozlišení

1024 x 768

1920×1080 nebo 1280x1024

RAM pro prohlížeč s aplikací

1GB

Podporované prohližeče

Prohlížeč musí implementovat standard HTML5, JavaScript 6+

Podporované prohlížeče aktuální verzi aplikace Elza:
  • Google Chrome

  • Mozilla Firefox

  • Internet Explorer 11

  • Microsoft Edge

Částečná podpora:
  • Apple Safari