How can I improve REST API traffic to a repository by using a load balancer?
Last Updated: | Applicable Hub Versions: All
Last Updated: | Applicable Hub Versions: All
REST API traffic from an integration can impact application server resource consumption such as memory and CPU. To improve application responsiveness and reduce errors during integration, Hub recommends servicing API traffic directly on a dedicated app server. This reduces load on other application servers in order to better handle traffic requested by users in the Hub UI. Additionally, this can prevent errors during integration related to an incorrectly configured load balancer.
Configuration
We recommend that:
Benefits
Impact of a Load Balancer
Using a load balancer for integration requires "sticky sessions" to be enabled to bind requests to the API app server during an entire session, ensuring that requests and activities are bound to the same app server. If this is not configured correctly, or if the load balancer attempts to change the node for the API traffic, the following problems can occur:
ALM repository vendors have similar recommendations to best support any kind of API integration. Our recommendation to remove API traffic from the load balancer pool is to ensure that all integration requests go to the same app server. Some APIs may have inconsistent paths for integrations. For example, most Jira API requests are to /rest, while Jira attachments are accessed via /attachments. Our recommendation ensures that API requests with inconsistent paths will be properly routed.