当缓存响应时,当响应没有改变时,maxage标头的合理值是什么?

时间:2013-02-07 12:59:55

标签: yql

我有一个YQL查询,它返回我知道肯定不会改变的数据。 为了避免速率限制,我考虑在yql响应中添加maxage标头。

现在我想知道一个合理的价值是什么(在我确定答案永远不会改变的情况下):一年? 10年 ?更多?

yql处理maxage标头的方式有什么特殊性吗?

1 个答案:

答案 0 :(得分:1)

关于maxAge的好文章以及如何使用它:http://www.yqlblog.net/blog/2010/03/12/avoiding-rate-limits-and-getting-banned-in-yql-and-pipes-caching-is-your-friend/。这应该回答您关于最大年龄的大多数问题。

对于您的第二个问题,如果响应永远不会改变,为什么甚至首先进行API调用?您可以完全消除网络延迟,并在服务器本身上有一个包含响应的conf / property文件。

如果对YQL处理标题的方式有任何规范但是我会尽力回答它,我不太清楚我是否理解你的意思。从我之前分享的链接中,以下是几行:

  

其次,您可以让YQL将对语句的响应缓存更长时间 - 只需将_maxage查询参数附加到您的调用中,结果将存储在缓存中一段时间​​(但不会短于它本来的时间)原本):

     来自weather.forecast的

http://query.yahooapis.com/v1/public/yql?q=select *,其中location = 90210& _maxage = 3600

     

当您使用不能缓存的表的输出或XML源而不必进行任何打开的表工作时,这非常有用

希望这有帮助。