在mule缓存范围内的内存存储和托管存储之间的主要区别是什么,并提供最佳性能。
在全局范围内配置缓存的最佳方法是什么?
我们目前正在使用内存存储缓存。由于我们使用的硬件配置较少,因此我们总是遇到内存中断问题。我们正在使用mule 3.7v。
请提供您以优化方式配置缓存的建议。
我们在内存存储方面遇到缓存过期问题。缓存日期也未在到期时间之后被清除。但是当我们使用" managed-store"它按预期工作。 以下是我的配置:
答案 0 :(得分:3)
<强>在存储器强> 这将数据存储在系统内存中。存储在内存中的数据是非持久性的,这意味着在API重启或崩溃的情况下,缓存的数据将会丢失。
<强>托管店内:强> 这将数据存储在ListableObjectStore定义的位置。使用Managed-store存储的数据是持久的,这意味着在API重启或崩溃的情况下,缓存的数据不会丢失。
来源(详细解释配置差异): http://www.tutorialsatoz.com/caching-in-mule-cache-scope/
答案 1 :(得分:0)
我的一位朋友清楚地向我解释了这种差异如下:
内存缓存 - &gt;它是一个存储数据的temperoy内存存储区。例如:考虑在Mule中使用VM组件,数据将以内存队列的形式存储在VM中
在托管商店的情况下 - &gt;我们可以存储数据并在以后的阶段使用它。示例:对象存储
主要是缓存将存储常用数据。它将通过将常用数据或结果保存在缓存范围中来减少db或http调用。
但两者仅用于临时存储,意味着它们仅对该特定会话有效。