【问题标题】:How to obtain reference data in a microservices architecture?如何在微服务架构中获取参考数据?
【发布时间】:2019-04-09 19:11:28
【问题描述】:

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

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

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

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


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

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

【问题讨论】:

  • 由于您已经在使用 AWS,您可以考虑使用 GraphQL 的 AWS AppSync - 这样做意味着您可以在来自客户端的单个请求中整合 AWS 资源.

标签: angular amazon-web-services aws-lambda microservices aws-serverless


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2017-12-28
    • 2014-01-08
    • 2020-09-12
    • 1970-01-01
    • 2019-03-20
    • 2018-06-04
    • 2019-11-11
    • 2018-08-11
    • 2019-03-03
    相关资源
    最近更新 更多