【发布时间】:2021-03-31 23:34:52
【问题描述】:
假设我有一个 API 网关供第三方在我的系统中创建订单。作为订单创建的一部分,我需要验证我提供的请求模型是否正确——不仅是静态的,而且通过检查外键是否有效——产品 ID 在订单中是否有效,帐户 ID 是否有效。如果不是,我想返回 400 让调用者知道他们传递了一个错误的请求。
我希望做的是创建一个 orders::createOrder lambda 函数,它会并行调用 products::listProducts、accounts::listAccountsForCustomer 和其他微服务来检索验证所需的信息,然后我才高兴在系统中创建订单。此验证需要同步进行,因为它是来自第三方的请求/响应来创建订单。
我通常希望逻辑域 - 客户、产品、订单、帐户是单独的微服务,并且我通常在 API 网关层中有一些逻辑,用于编排/映射到下面的微服务。我一直在读到从 Lambda 调用 Lambda 是个坏主意..
如何在无服务器上正确建模?
【问题讨论】:
标签: aws-lambda microservices aws-api-gateway serverless-framework serverless