我想要多个lambda函数需要它们的所有数据放在一个位置。这样我就可以自由地修改/更改/添加数据,而没有任何副作用。使用无服务器框架构建无服务器应用程序时如何达到此要求?
答案 0 :(得分:1)
“最佳”是一个相对术语,但一种方式是使用https://github.com/Kaggle/kaggle-api/issues/15。您没有指定编程语言,但是我在Java中拥有的一些代码类似于:
AWSSimpleSystemsManagement ssmClient = AWSSimpleSystemsManagementClientBuilder.standard().build();
GetParameterRequest getParameterRequest = new GetParameterRequest()
.withName("/path/to/creds/cred1")
.withWithDecryption(Boolean.TRUE);
String parameterValue = getParameterRequest.getParameter().getValue();
遗漏了空检查之类的东西。
这有两件事。首先,它创建了一个位置来存储凭证(或表名)之类的公用信息,因此您无需将它们存储在其他位置。其次,它允许您创建参数层次结构,以便例如可以将用于开发,登台和生产环境的参数放在一个位置。另外,您可以按环境许可参数,例如,开发IAM角色看不到生产参数。
我正在用加密的字符串显示它-如果您不需要的话就不需要。
其他方式可以是DynamoDB或其他持久性存储,例如RDS。