[infinispan-dev] HotRod near caches

Tristan Tarrant ttarrant at redhat.com
Tue Feb 11 02:55:30 EST 2014


Hi people,

this is a bit of a dump of ideas for getting our HotRod client in shape 
for supporting near caches:

- RemoteCaches should have an optional internal cache. This cache should 
probably be some form of bounded expiration-aware hashmap which would 
serve as a local copy of data retrieved over the wire. In the past we 
have advocated the use of combining an EmbeddedCacheManager with a 
RemoteCacheStore to achieve this, but this is only applicable to Java 
clients, while we need to think of a solution for our other clients too.
- Once remote listeners are in place, a RemoteCache would automatically 
invalidate entries in the near-cache.
- Remote Query should "pass-through" the near-cache, so that entries 
retrieved from a query would essentially be cached locally following the 
same semantics. This can be achieved by having the QUERY verb return 
just the set of matching keys instead of the whole entries
- Optionally we can even think about a query cache which would hash the 
query DSL and store the resulting keys locally so that successive 
invocations of a cached query wouldn't go through the wire. Matching 
this with invalidation is probably a tad more complex, and I'd probably 
avoid going down that path.

Tristan


More information about the infinispan-dev mailing list