早上好,
我们的服务使用一个缓存,它每隔一段时间以一种周期性的方式与数据库的当前状态同步。但是,有一个问题是,如果服务由于某种原因重新启动,那么一些更新频率较低的缓存还没有收到他们的数据副本{因为还没有安排周期性任务},所以有更多的停机时间。我正在考虑添加一个修改后的 getter 接口,传入一个函子,如果在缓存中找不到它,它将从数据库中获取值。问题来自 c++ 背景我需要一些关于正确的 java 方式的反馈。
我正在考虑添加这样的界面。
V getOrGenerateForKey(final Key k, final Function<Key, V> foo)
是否有任何其他 java 类可以更好地捕捉这个想法或提供更简洁的解决方案?
谢谢, 萨布拉马尼亚