Ignite 如何限制缓存存储读取线程?

Ignite 如何限制缓存存储读取线程?,ignite,Ignite,我已经为我的ignite缓存实现了一个缓存存储,每当有一个通过缓存存储的读操作时,我想将其限制为单线程或最多2个。这背后的原因是,底层缓存存储是一个基于Rest的远程Web服务,只能支持有限数量的连接。因此,我希望发送有限数量的请求以供通读。 请注意,如果配置publicThreadPoolSize=1,这意味着所有cache.get和cache.getAll操作都将是单线程的。因此,不需要这种行为,我只希望在缓存存储级别进行节流 提前感谢您的回复, Mridul我假设您有自己的CacheSto

我已经为我的ignite缓存实现了一个缓存存储,每当有一个通过缓存存储的读操作时,我想将其限制为单线程或最多2个。这背后的原因是,底层缓存存储是一个基于Rest的远程Web服务,只能支持有限数量的连接。因此,我希望发送有限数量的请求以供通读。 请注意,如果配置publicThreadPoolSize=1,这意味着所有cache.get和cache.getAll操作都将是单线程的。因此,不需要这种行为,我只希望在缓存存储级别进行节流

提前感谢您的回复,
Mridul

我假设您有自己的
CacheStore
实现,因此您可以在那里添加逻辑来支持您的需求。但是,如果有两个以上的线程试图通过缓存从存储读取数据,该怎么办?如果我们有超过特定数量的查询请求从存储读取数据,则远程服务可能会停止。希望这能有所帮助。我只需要在缓存存储中设置一个连接池,以限制并行连接的数量。如果没有可用的,您可以等待或抛出异常。在后一种情况下,
get()
操作将完全失败。