[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