...
There already is a similar feature - Partition Awareness. When enabled, the client calls exactly the primary node to update cache by key.
To achieve Service Awareness we should:
1) Bring a new feature to the thin client protocol.
2) Require the partition awareness Activate with the Partition Awareness flag enabled. It raises proper cluster connections.
3) Obtain service topology with a dedicated request by the client and provide it to the service proxies.
4) Initiate the topology update with: first service invocation, cluster topology change, some timeout (only if service is invoked).
...