我有以下设置:
Realtime_data_source - > EhCache_instance - > web_server - > websocket_clients
每次用户连接时,我都会将CacheEventListener注册到缓存中。因此,在新数据到达时,相应地处理更新。但是,如果用户在一天中间连接,我希望他首先接收初始数据快照然后更新。您能否建议如何配置我的CacheEventListener以支持初始数据图像?
我使用ResourcePoolsBuilder设置缓存来存储数千个条目。
答案 0 :(得分:0)
从问题的扩展描述中,我认为Ehcache不是你应该使用的。
从ResourcePoolsBuilder
的用法我假设您使用的是3.x版。作为提醒,允许缓存在任何时间点丢弃数据。因此,虽然您可能会看到所有数据到达,但无法保证完整的快照,因为缓存可能已逐出内容。
除了迭代缓存之外 - 非常气馁 - 不支持获取所有数据的快照。更重要的是,对于像offheap和disk这样的层,缓存可能包含一个在给定时间甚至不适合堆的数据集。