Hi Michael,
To achieve high availability for a Mendix application accessed by up to 1000 computers, deploy two Mendix app servers behind a load balancer (such as Azure Application Gateway, AWS ALB, or HAProxy). Both app servers should connect to the same shared file storage (e.g., NFS, Azure Files, or AWS EFS) and a highly available SQL server (like PostgreSQL with HA setup or SQL Server Always On).
Configure the load balancer with health checks to route traffic only to healthy nodes. For updates (Mendix runtime, application deployment, or OS patching), follow a rolling update strategy: remove one app node from the load balancer, apply the update, verify functionality, and then repeat for the second node.
Ensure that both nodes use the same Mendix deployment package and runtime configuration, and maintain session stickiness or use a centralized SSO mechanism if needed. File storage should support concurrent access, and the database layer must have automatic failover.
This setup ensures zero/minimal downtime during maintenance while maintaining high availability and performance for all users.
Hope it helps!
Running multiple mendix runtime instances takes more than just sticky sessions.
You definitely want to review:
- https://docs.mendix.com/refguide/clustered-mendix-runtime/
- https://docs.mendix.com/deployment/
And depending on how exactly you are deploying, there are specifics to consider.