Cloudhub 中工作人员之间的共享缓存?
Shared cache between workers in Cloudhub?
根据我在 official cache scope documentation 中看到的情况,如果托管对象存储与适当的值一起使用 - 缓存应该在 Cloudhub 中的多个 workers/nodes 之间共享。
<ee:object-store-caching-strategy name="Caching_Strategy" keyGenerationExpression="#[flowVars.address_id + flowVars.count]" doc:name="Caching Strategy">
<managed-store storeName="CacheStore" persistent="true" maxEntries="${cache.max.entries}" entryTTL="${cache.ttl}" expirationInterval="${cache.expiration.poll}"/>
</ee:object-store-caching-strategy>
但这没有按预期工作。 未共享缓存条目。每个 worker/node 似乎都在缓存存储中创建。
我尝试了一些组合,例如使存储持久化或将 expirationPoll 减少到几毫秒或使队列持久化等等。不开心。
非常感谢您的帮助。
使用 Mule 运行时 3.8.4。
Cache Scope
旨在供每个工作人员使用,并且仅用作端缓存模式。对于共享缓存,您需要某种集群缓存解决方案。我们最终选择了 Hazelcast
.
根据我在 official cache scope documentation 中看到的情况,如果托管对象存储与适当的值一起使用 - 缓存应该在 Cloudhub 中的多个 workers/nodes 之间共享。
<ee:object-store-caching-strategy name="Caching_Strategy" keyGenerationExpression="#[flowVars.address_id + flowVars.count]" doc:name="Caching Strategy">
<managed-store storeName="CacheStore" persistent="true" maxEntries="${cache.max.entries}" entryTTL="${cache.ttl}" expirationInterval="${cache.expiration.poll}"/>
</ee:object-store-caching-strategy>
但这没有按预期工作。 未共享缓存条目。每个 worker/node 似乎都在缓存存储中创建。
我尝试了一些组合,例如使存储持久化或将 expirationPoll 减少到几毫秒或使队列持久化等等。不开心。
非常感谢您的帮助。
使用 Mule 运行时 3.8.4。
Cache Scope
旨在供每个工作人员使用,并且仅用作端缓存模式。对于共享缓存,您需要某种集群缓存解决方案。我们最终选择了 Hazelcast
.