使用AWS API Gateway + Lambda而不使用它成为依赖关系

问题描述 投票:2回答:1

毫无疑问,API Gateway + Lambda对微服务的好处。

我担心的是,如果我们决定将API Gateway + Lambda移到ECS / Fargate,甚至是另一个云,会发生什么。

似乎就每个路线/行动使用一个Lambda函数达成了共识。

我有一些关于如何使用这种方法进行设计的理论,以便可以从Lambda中拔出代码并在其他地方插入代码。

我还想知道社区中其他人为实现这一目标做了些什么?有没有人试图将API移出Lambda并能够使用XXXX设计成功完成?有什么教训?

这个语言对于这个讨论并不重要,但我们使用的是python3

aws-lambda dependencies microservices aws-api-gateway
1个回答
0
投票

你现在面临的是一个名字。它被称为“供应商锁定”。你几乎无能为力。

但是,我发现将AWS Lambda处理程序功能视为Web服务器中的控制器很有用。你会在你的控制器中做什么?您将验证传入数据,将其传递到服务层,然后从服务序列化响应并将其传递回API网关。简而言之,您的处理程序功能不应包含业务逻辑,这使得即使从无服务器迁移到服务器也很容易。它也可以很好,因为它留下了一些优化的地方。如果您最终看到服务层架构为冷启动增加了大量时间,那么只需将其反规范化为单个文件即可。它会更快地工作,但是你会牺牲代码的可维护性。没有银弹,软件一直是关于权衡的。 :)

© www.soinside.com 2019 - 2024. All rights reserved.