跨服务器缓存失效

时间:2016-06-17 06:56:44

标签: amazon-web-services caching amazon-sqs amazon-sns cache-invalidation

我有6个Web服务器,由于缓存不一致而给我带来问题。我正在考虑构建一个缓存失效服务,以便有一个主题,所有服务器都可以在其上发布消息以使对象无效。我正在考虑使用Amazon SNS来制作主题。

现在服务器收到失效消息,我对以下内容感到困惑:

  1. 我是否应该使用SQS队列让服务器接收消息。
  2. 我应该使用HTTP端点,然后在该路由上构建一个使缓存无效的API。 您能否强调这两种方法的优缺点或任何其他可能对我有利的方法。

1 个答案:

答案 0 :(得分:3)

对于您的用例,http端点是更好的解决方案。您将消息推送到SNS,并且每个订阅的端点将在您托管的新api端点处被调用,从而清除缓存。

SQS不是最好的用例 - 为了使用它,你需要有6个独立的队列(或每个服务器一个),你需要在每个队列上都有一个应用程序在后台检查新消息并“拉”消息 - http端点是一个'推送'操作,这就是你想要的。