Java 使用带选项的分布式缓存处理缓存未命中

Java 使用带选项的分布式缓存处理缓存未命中,java,caching,redis,memcached,distributed-caching,Java,Caching,Redis,Memcached,Distributed Caching,我的用例如下所示: 应用程序客户端使用分布式缓存(Memcached/Redis/etc)缓存数据库输出。我想再添加一个对应用程序客户端隐藏的功能——如何处理缓存丢失 e、 g.应用程序客户端只要求获取分布式缓存密钥的值(不知道数据库详细信息)。现在,它希望分布式缓存处理缓存未命中-从关系数据库获取数据并缓存它 Redis/Memcached似乎没有提供这样的功能。我错过了什么,或者我应该看看这个用例的其他工具/框架。< P>你需要使用读/写缓存模式,客户端应用程序将考虑缓存作为主数据存储,并执

我的用例如下所示:

应用程序客户端使用分布式缓存(Memcached/Redis/etc)缓存数据库输出。我想再添加一个对应用程序客户端隐藏的功能——如何处理缓存丢失 e、 g.应用程序客户端只要求获取分布式缓存密钥的值(不知道数据库详细信息)。现在,它希望分布式缓存处理缓存未命中-从关系数据库获取数据并缓存它


Redis/Memcached似乎没有提供这样的功能。我错过了什么,或者我应该看看这个用例的其他工具/框架。

< P>你需要使用读/写缓存模式,客户端应用程序将考虑缓存作为主数据存储,并执行缓存上的所有读写操作。另一方面,缓存将负责使用部署的读通/写通提供程序与数据库同步

读操作时,若缓存中不存在数据,缓存本身将从数据库加载数据,以避免缓存丢失

Iqbal Khan阅读了有关读/写缓存的更多详细信息


此功能由Alachisoft提供。的Java客户端也提供此功能。

我认为redis没有直接连接到mysql的连接器,因此它不知道缓存的是什么数据,我认为您必须在应用层处理它,或者在redis前面编写代理服务