1

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

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

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

1 回答 1

3

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

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

于 2016-06-17T07:02:37.857 回答