Scaling
Fiorano API management architecture scales linearly, allowing the infrastructure to grow on an as-needed basis. The classification of gateway servers into Server Groups allows for a natural scaling process.
The project deployment is linked to server groups rather than the physical servers, which facilitates flexible deployment patterns.
Scaling
Configuring a Server Group with a Single Server
The simplest form of configuring a Server Group is to map a single physical gateway server. Create a Server Group with the name 'GatewayServer' by following the steps mentioned in the Creating a Server Group for Project Deployment section. Similarly, add another server group with the name 'GatewayServer1'. In this example, apigateway and apigateway1 are added to GatewayServer and GatewayServer1 respectively.
Server Groups such as Production and Development exist by default with servers apigateway1 and apigateway allotted to them respectively. These servers can be used by clicking the Edit button ,and then moved between Servers and Availabe Servers sections using the Left and Right arrow buttons.
There is no distinction between the server group and the server in this case. Therefore, the IP of the server can be directly made available to the clients.
Figure 1: Adding Gateway Servers
As and when the load on the Servers increase, there are multiple ways to cope with the increased traffic which involves increasing the system resources allocated to the server such as memory and CPU power. These processes generally incur downtime of services. However, this concept of Server Groups provides a way to scale such scenarios without any downtime.
Adding Multiple Servers to Server Groups
To scale with increased traffic without any downtime, a new server instance can be started. Ffrom the dashboard, add the server to the Server Group on which increased activity is observed.
Figure 2: Adding a new server to the Server Group
Load Balancer
When multiple servers are part of a server group, a load balancer must be used to balance requests across the servers.