【发布时间】:2015-03-23 21:23:13
【问题描述】:
我们在我们的应用程序中使用了 infinispan 热棒。 有时从缓存中检索需要更多时间。这种情况并非始终如一。大部分时间需要 6m 秒,但有时需要很长时间(200 毫秒)。
从缓存中检索到的对象大小约为 200 字节。
我们在 infinispn 5.2.1 和 JDG 6.3.2 中都进行了测试
有人遇到过这个问题吗?
谢谢
生活
【问题讨论】:
标签: caching infinispan spring-cache
我们在我们的应用程序中使用了 infinispan 热棒。 有时从缓存中检索需要更多时间。这种情况并非始终如一。大部分时间需要 6m 秒,但有时需要很长时间(200 毫秒)。
从缓存中检索到的对象大小约为 200 字节。
我们在 infinispn 5.2.1 和 JDG 6.3.2 中都进行了测试
有人遇到过这个问题吗?
谢谢
生活
【问题讨论】:
标签: caching infinispan spring-cache
请记住,您正在运行 Java,这意味着垃圾收集器可以随时触发,如果您非常幸运,这将为您提供 200 毫秒,如果您不是很幸运,则为几秒钟,如果您有大容量,则最多几分钟堆和未经过良好调整的 GC 设置。
由于从分布式缓存中检索需要 RPC 到另一个节点并在那里处理 RPC,因此线程调度也起着至关重要的作用。在繁忙的系统中,线程等待并不奇怪。
从 Infinispan 的角度来看,检索不需要等待。请求被转换为 RPC 到远程模式,并由接收消息的同一线程处理。该请求不等待任何锁。
在 JGroups 中,可能会涉及一些延迟。如果无法处理负载,消息可能会在网络上丢失或在接收器上丢弃,然后重新发送。此外,UFC 协议确保接收器的速度可以与发送器的速度匹配。
在非实时 Java 之上构建的任何东西都尽最大努力工作,有时会发生错误。 200 毫秒仍然是一个不错的响应时间。
【讨论】: