Multi - Data Centre Deployments

 
FCSDK and Live Assist reside on the Fusion Application Server.  The Application Server nodes can be clustered within the same data centre to maintain session state and service availability in the event of a node or network failure.
 
In order to build a Fusion Application Server Cluster, the nodes require:
  • Multicast communication between nodes
  • Time Synchronization using NTP.
  • Minimal network latency to replicate Session State

It is highly recommended, that unless these three requirements are met, that Clusters are not produced to span different networks nor span data centres in different physical locations.

The Fusion Application Server ensures that session state is accessible from any Node within a Cluster. This means upstream load balancers/reverse proxies do not need to target (stick) to a particular LA Node.  They do not need to target the same node that was used to create a token for example.Specifically, the Session Token/Description inside FCSDK/Gateway is accessible from any LA Node also.

FCSDK and Live Assist Transactions
 
Assuming that clusters are NOT distributed across data-centres because the above criteria are NOT met. Let us assume there are 2-FAS clusters in 2 disjoint data-centres.  A Client's Session Creation HTTP transactions and the WebSocket transactions must target the same Cluster.
 
For Live Assist:
  • A Customer and Agent must create LA sessions against the same Data Centre and thus the same Cluster.
  • The Customer and Agent do not have to target the same Node within the Data Centre, FAS will redirect accordingly.
So, as long as both requests target the same Data Centre, FAS will get the Web Sockets to the correct node.
 
  • The 'topic' URL parameter can be used to correlate the Customer and Agent Sessions
  • The WebSocket transaction, starts with a HTTP request which is 'Upgraded' a to WebSocket
    • A cookie can be added to this HTTP request prior to upgrade so Session Creation and WebSocket transaction can be homogenized to a Data Centre.
    • On web, the cookies must have the standard parameters added to ensure it gets added to the Web Socket request.  This is a standard mechanism in the the browser.
    • On iOS, the application has to populate the NSCookieStore correctly and on Android some work has to be done to create and populate a cookie manager.
  • There is an expectation that the infrastructure is able to ensure the Upgraded HTTP and WebSocket transactions can be correlated to the same Data Centre (by reusing established TCP connections).

 

 

 

 

Comments are disabled on these articles if you require help contact support@cafex.com.

Have more questions? Submit a request

Comments

Powered by Zendesk