微服务架构需要建议

时间:2018-05-10 19:47:36

标签: architecture microservices separation-of-concerns

我们以两个不同的团队/应用程序在敏捷模式下工作,我们正面临新的情况,我们需要您的建议。应用程序A的前端(由团队A开发)现在需要来自微服务B(由团队B开发)的服务。前端A应该直接询问微服务B,还是希望它通过微服务A?这是一个关注点分离的问题吗?

帮助/建议将受到高度赞赏。

Thanx很多!!

enter image description here

2 个答案:

答案 0 :(得分:1)

前端A应该直接调用Microservice B.正如你的解决方案2。

简化,微服务架构应该由小型服务组成,以自包含和自我管理的方式提供单一功能。

通过让你的解决方案1,你打破了这个原则。

MicroserviceA不需要调用Microservice B来执行其功能。前端A需要它。保持微服务简单和专注,否则你没有做微服务架构,你正在做其他事情。

接近微服务架构的最佳方法是单独处理每个微服务功能,就好像它是唯一存在的微服务,然后根据需要添加依赖(调用其他微服务),不考虑需求您的微服务的客户,请考虑特定服务提供的内容。

答案 1 :(得分:0)

Tonz可能的解决方案。

1)尝试在后端前面添加像Nginx反向代理一样的新层。

2)几乎一样。使用API​​网关。

3)直接从后端A调用后端B并在后端A中创建新端点

4)重复数据和逻辑

5)再提取一个后端

6)等。

7)等......

这实际上取决于许多因素,如通用架构,代码组织,开发规则,工具......没有一个银弹。