首页 > 解决方案 > 如何在微服务架构中获取参考数据?

问题描述

我们正在将单体应用程序迁移到微服务架构,并打算走上无服务器的道路。我们在 AWS lambda 上开发了独立的服务,并且 UI 是用 Angular 编写的。

有一些参考数据(来自外部来源),我们需要有关获取这些数据的最佳路径的建议。

例如:我们必须显示员工详细信息,并从服务中获取员工 ID。要根据 ID 显示员工姓名,我们必须调用外部源。公司名称等也是如此。

到目前为止,我们有两种方法。优缺点都有什么?我们应该考虑另一种方法吗?


方法 1:我们在服务层(AWS lambda)对服务(外部源)调用执行此服务(我们的微服务),并将完整的理想结果返回给 UI 以进行显示。

方法 2:我们将员工 ID 返回给 UI,Angular UI 调用外部源以所需格式(显示名称和公司描述)显示数据。

标签: angularamazon-web-servicesaws-lambdamicroservicesaws-serverless

解决方案


从微服务最佳实践的角度来看,第一种方法更好。您将拥有一项服务,旨在处理您需要发送给客户的所有数据。它可能从外部或其他服务获取数据,但您希望数据工作集中,避免客户端依赖不同的服务。


推荐阅读