High Availability and Scale Deployment considerations
For Production environments, ensure that all components and its dependencies are deployed in a High Availability architecture. These includes:
API Instances:
Deploy with a Load Balancing front end
Have at least 2 machine instances running the API services
You can configure Load Balancing with several methods
IIS Web Server with ARR as mentioned here
Use Windows Server Network Load Balancing
Or use dedicated load balancers like F5.
Though the API calls are stateless, in order to give a better experience and performance, configure load balancing with sticky sessions (requests from the same client/IP during the same session goes to the same backend API node).
Agent Services (Windows NT Service)
Install Agent Service on the first machine, configure and ensure its running. The first machine will become the primary (master).
Install Agent Service on a second machine, configure and ensure its running. The second machine will register itself as a secondary and will take over as primary (master) if the first agent stopped.
SQL Server
Deploy with Always ON / Fail over cluster.
Read more on SQL Server Business continuity overview here.
Last updated