A load balancing mechanism between SAP CRM and multiple Genesys SAP Gplus (ICI) adapter instances seems to be the source of much debate and frustration!
The standard response from SAP and Genesys seems to be to create multiple SAP roles / profiles and to tie these to individual Gplus instances via the SAP Communcation Profile.
However, in large deployments (2000+ users) such as at this client this does not really seem a feasible approach.
Further investigation into the Integrated Communication Interface (ICI) between SAP and the Gplus adapters seems to reveal the problem – traditional load balancing (without using SSL possibly) is not possible since there is no session information in the HTTP header:
Therefore, technically the only option is to implement “user affinity” based on the <user> element in the SOAP header:
So with this in mind I wrote a custom SAP Gplus Load Balancer Service which provides a load balancing mechanism using user affinity between SAP CRM and multiple Genesys SAP Gplus adapter instances.
The SAP Gplus Load Balancer is implemented as a Windows service which can be deployed on multiple physical servers and run in parallel to provide resilience and failover capabilities. SAP Gplus Load Balancer instances can be configured as application of type Third Party Server in Genesys CME allowing instances to be monitored and controlled using standard Genesys management framework components such as Solution Control Interface (SCI).
Here is an architecture diagram:
Let me know if you want more information!