我与我的经理就 AWS Lambda 的使用进行了永无休止的讨论。我想从你们中的一个人那里得到一些帮助。
我有点犹豫是否将无服务器架构用于生产级项目。首先,测试我在本地设置中构建的内容有点耗时。即使我们可以通过单元测试来测试代码,我们也无法消除模拟请求和响应对象失败的可能性。当我在开发过程中测试我的 Lambda 编写的 API 时,我无法在本地设置中调用 lambda 的事实让我非常无聊。其次,据我所知,AWS Lambda 的可用性和可靠性没有任何承诺的 SLA。这让我有点犹豫采用 Lambda 来构建 RESTful API。
所以现在我要做的是仅在捕获从 AWS 触发的事件时使用 Lambda。例如,在用户将他的个人资料图片上传到 S3 存储桶后执行某项操作,或者在用户通过 Cognito 注册后执行某项操作。
但是,我的经理期望将我的 Node.js API 与 AWS Lambda 混合用于一个项目。从我的角度来看,这完全没有意义。一旦我们在 EC2 实例上设置了 Node API,我认为考虑设置自动扩展或如何利用当前 EC2 上运行的所有资源会更有效率。但是我的经理坚持要我同时设置 Node API 和 Lambda API。例如,服务 A 和 B 将由 Node API 提供服务,服务 C、D 和 E 将由 AWS Lambdas 提供服务。
我之前尝试过,但它给我带来了很多困惑。我觉得在构建 API 时最好选择 Node API 或 AWS Lambda API,而不是将它们混合在一起。
我不想说我的经理完全是假的,我是对的。在这种情况下,我只想有一个明确的答案。对于这种情况,我真的很感激任何评论和答案。