我的用例如下:
应用程序客户端使用分布式缓存(Memcached / Redis / etc)来缓存数据库输出。我想添加一个对应用程序客户端隐藏的功能-如何处理高速缓存未命中,例如,应用程序客户端只是要求获取分布式高速缓存的键值(不知道数据库详细信息)。现在,它希望分布式缓存能够处理缓存未命中-从Relational DB获取数据并将其缓存。
看来Redis / Memcached不提供这种功能。我是否缺少某些东西,或者我应该针对此用例查看其他工具/框架。
您需要使用直读/直写缓存模式,其中客户端应用程序会将缓存视为主要数据存储,并对缓存执行所有读取和写入操作。另一方面,缓存将负责使用已部署的直读/直写提供程序将自身与数据库同步。
在读取操作中,如果缓存中不存在数据,则缓存本身将从数据库加载数据,从而避免缓存未命中。
阅读Iqbal Khan撰写的这篇文章,以获取有关读/写后缓存的更多详细信息。
Alachisoft的TayzGrid中提供了此功能。NCache的Java客户端也提供此功能。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句