Deployment Options
Depending on availability and load balancing requirements, the system can be installed as a single server instance or in a three-server cluster.
You can learn more about how to install your Helmut4 server here
Single server:
When installed as a "Single server", all application containers including the database are running on one server.
Advantages:
Less hardware resources required
Less technical complexity
Disadvantages:
Downtime of the system in case of necessary maintenance
No redundancy in case of a server failure
No load balancing when accessed by too many users
Cluster:
Installation as a cluster is recommended for use by approximately 100 users or more due to load balancing and/or when high availability of the system is required. Usually we install a docker swam cluster based on three servers (odd number).
Each server can be addressed directly as HTTP(s) endpoint or the distribution of requests is done by a load balancer placed in front of it (provided by the customer).
All application containers run in parallel on all servers (except cronjob and rabbitmq). The database is set up as realtime replication in this setup. Each server has a 1:1 copy of the data. The individual application containers can access all three database instances - the distribution of requests is done automatically.
Advantages:
High reliability
Good load distribution
No downtime during maintenance work on the operating system of the servers
Disadvantages:
More hardware resources
Higher technical complexity