General Architecture¶
- A web application (or App)
- A server application (or Pod)
- A database
- A processing server
Note: The system is divided into 5 main technical components:
- A web application (or App), hosted on a frontend web server (under Docker), allows access to the input interfaces and the administration of repositories. It is developed on the Angular framework.
- A server application (or Pod), which provides two distinct API access points: a GraphQL API for data access (read/write, with access control).
- A database, allowing the banking of data and repositories. The RDBMS can be PostgreSQL, Oracle, or HSQBDB.
- A processing server, to execute regular or heavier tasks: Aggregation or denormalization of data, database backup, etc. Most often, the processing server is integrated and managed in the Pod, but it can be entirely dissociated.
¶
Technologies¶
-
Web application (or App)
- Angular 14 / Ionic 7
- Web and mobile compatible (Progressive Web Application)
-
Server application (or Pod)
- Java / Spring-Boot / Hibernate
- DB: PostgreSQL, Oracle or HSQLDB
- Data access API: GraphQL
- Deployment: Ansible or Docker