0

我正在创建一个应该只存储一些配置的应用程序。我使用 AWS AppConfig 作为配置存储。

我希望能够通过代码更新此配置数据。因此,当事件发生时,我想调用 SQS 来创建一条消息,其中包含要附加的新配置数据。SQS 应该调用一个 lambda。Lambda 应该从 AppConfig 获取最新配置,附加新配置,然后部署到 AppConfig。

因此,我希望 AppConfig 具有旧配置,并附加新配置。

是否有一种仅使用 AWS 服务来实现此目的的简单方法?

4

1 回答 1

1

我没有尝试过任何这些,也没有直接使用过 AppConfig,但你从网络上拼凑信息应该不难。

  1. 创建 SQS 队列以保存更新。
  2. 创建 Lambda 以从 SQS 队列中读取。
  3. 为从队列接收消息的 Lambda 编写代码,拉取 AppConfig 并使用新值进行更新。将众多 AWS 开发工具包中的一种用于您的首选语言。

您应该注意的一件事是 Lambda 可以一次运行多个,因此假设您的 AppConfig 如下所示:

{
   "version": 1
}

然后将两个更新同时推送到 SQS 队列:

{
    "update1": "abc"
}

and

{
    "update1": "xyz"
}

它们可以同时执行,并且可能发生竞争条件,其中两个都保存但一个覆盖另一个。

我在这里看不到 SQS 队列的好处,也不了解使用此设置的完整用例或原因,但我认为可能有更好的方法来实现您想要实现的目标。

于 2020-12-31T13:44:08.473 回答