2015-02-11 50 views
0

我是APIGEE的新手。我正在尝试实现填充缓存和查找缓存用例。APIGEE查找缓存不适用于后续请求

从我的测试中,我无法在随后的请求中填充缓存和查找缓存。然而,只是为了测试,如果我在相同的请求中查找缓存,我会获得成功。所以,我的设置是

查询缓存 - >服务标注 - >填充缓存 - >查找缓存

首先查找缓存始终为假及第二查询缓存是真正为每一个请求。我的期望是第一个查找缓存应该在第一个请求后返回缓存命中。

您能否就我的错误提供指导。

首先查找

lookupcache.Lookup-缓存1.cachekey vouchers__9344401449022

lookupcache.Lookup-缓存1.cachehit假

lookupcache.Lookup-缓存1.failed假

lookupcache.Lookup-缓存1.cachename woolworths__test__edr_customer_cache

lookupcache.Lookup-缓存1.assignto voucherjson

第二查找

lookupcache.Lookup-缓存2.cachename woolworths__test__edr_customer_cache

lookupcache.Lookup-缓存2.assignto flowvar

lookupcache.Lookup-Cache-2.cachekey代金券_9344401449022

lookupcache.Lookup-Cache-2.failed false

lookupcache.Lookup-缓存2.cachehit真

查找策略(两者相同)

<CacheKey> 
    <Prefix>vouchers</Prefix> 
    <KeyFragment ref="edrno" /> 
</CacheKey> 
<CacheResource>edr_customer_cache</CacheResource> 
<Scope>Global</Scope> 
+0

在进一步的测试中,我发现有一次,我在第一次查找时得到有效的缓存命中。大约10个请求中只有2个返回“真”,用于缓存命中。这是否意味着环境有问题? – 2015-02-12 00:09:48

回答

0

问题描述表明,缓存没有在不同的消息处理器传播。这就是为什么您在相同的请求中看到缓存查找成功的原因,而不是跨多个请求。在填充缓存之前和之后,您也不需要查找缓存策略。我还建议你尝试将范围从全局改为独占,看看是否有效。

您试图缓存的响应有多大。这也会让我们知道发生了什么。