跳转到主要内容
Chinese, Simplified

任何SaaS架构的目标之一都是限制开发人员对租户细节的了解。在无服务器SaaS环境中,您可以使用Lambda层作为创建共享代码的一种方式,该代码可以在开发人员的视野之外实现多租户策略。

图3中的图表提供了如何使用Lambda层来解决这些多租户概念的示例。在这里,您将看到我们有两个单独的微服务(Product和Order),它们需要发布日志和度量数据。这里的关键细节是,这两个服务都需要将租户上下文注入其日志消息和度量事件中。然而,让每个服务自己实现这些策略并不理想。相反,我们引入了一个层,其中包含管理数据发布的代码。

图3:Lambda层隐藏租户细节

您将注意到,我们的层包括接受JWT令牌的日志记录和度量帮助器。这使得每个微服务都可以简单地调用这些函数并提供令牌,而不必担心与哪个租户合作。然后,在该层中,代码使用JWT令牌解析租户上下文,并将其注入日志消息和度量事件中。

这只是如何应用层来隐藏租户上下文的一个片段。真正的价值是,注入租户上下文的策略和机制从开发人员体验中完全删除。它们还分别更新、版本化和部署。这允许在您的环境中更集中地管理这些策略,而无需引入可能增加延迟并造成瓶颈的单独微服务。

原文地址
https://docs.aws.amazon.com/wellarchitected/latest/saas-lens/layers-hide-tenant-details.html
本文地址
Article

微信

知识星球

微信公众号

视频号