我必须设计一种在 Scala/Java 中流式传输数据的方法,与我收到数据的那一刻相比有一定的延迟。我有一个用于原始数据源(实时数据源)的 API,它让我可以像使用数据库一样查询它,使用类似查询的格式,并且还可以在发生某些事情时获得通知,就像使用 EHCACHE 一样。
现在我想例如根据用户权限以不同的延迟流式传输数据。一些用户会看到以 0 延迟传输的数据,其他的 15 分钟,其他的 60 分钟。
因此,我需要一个由多个较低级别缓存(0 延迟、15 分钟延迟、60 分钟延迟)组成的顶级缓存。
首先,我希望缓存只包含相同类型的元素。这将使事情变得更简单,因为我可以决定元素的唯一 ID,并且我只需根据所需的延迟将请求路由到正确的缓存
稍后,我希望我的延迟缓存可以查询。例如,是否有一部分来自 EHCache 的代码可以回收?