Products | Versions |
---|---|
TIBCO ActiveSpaces | - |
Not Applicable | - |
Description:
Switched from joining an AS cluster as leech to joining as a remote
client and observed that performance is degraded by 50% for writes and
100-150% for reads (get and query). Why is a remote client slower than a regular leech connection.
Symptoms:
Remote client is slower then regular leech connection.
Cause:
A remote
client connects to a member within the cluster and that member acts as a
proxy for the remote client. The remote client forwards its request to
the proxy who then invokes the request as if it were its own. When the
request is complete the proxy then forwards the result back to the
remote client. There is generally no load balancing required since the proxy acts as a
pass through. However, there is some CPU overhead for acting as a pass
through so it is advised to distribute the remote clients to connect to
different proxy members if possible.
With a leech client, the nodes participating in execution of the request are client and the seeder. With a remote client, the proxy is also present in the execution path. Having an extra node in the path leads to more latency for each transaction due to the processing at the proxy and the extra TCP hop needed to transport the messages between the remote client and the proxy.
The attached (Filename:Remote-client_status.jpg) chart shows the following: