Description
Implement Best Effort Affinity.
The scenario is following:
1. Thin client connects to one of the node from the user provided address list.
2. When user create instance of CacheClient, thin client requests partition mapping for the cache.
3. Client establishes connections to nodes, which are both in the list, provided by user and in a server node response.
4. When user makes put/get/some other cache operation, thin client makes the best effort to send the request to the node, which stores the data.
5. To update partition mapping, thin client can provide public API, or do it with some timeout. Also, we can add "miss" flag to cache operation response, which will indicate, that operation was not local for the server node and which thin client can use to understand, that partition mapping has changed to request server node for an update.
Attachments
Issue Links
- Is contained by
-
IGNITE-8494 CPP Thin: Implement Thin CPP client
- Resolved
- is related to
-
IGNITE-8495 CPP Thin: Implement thin client start and connection establishment
- Resolved
- links to