我有一个问题要问微服务社区。我将举一个教育领域的例子,但它适用于每个微服务架构。
假设我有 学生服务和 许可服务业务要求学生人数受许可证限制。因此,每次创建学生时都必须进行许可检查。有多种类型的许可证,因此操作中必须包含许可证的类型。
我的问题是您发现哪种方法在实践中更好:
人们谈论微服务架构更像是图表而不是层次结构和 选项 1 有点把它变成一个层次结构,在那里你会得到越来越粗糙的复合 Material 。其他缺点是它对客户端实际使用的服务造成了混淆,并且存在一些重复,因为复合 API 必须包含调用下游服务所需的所有参数。
它确实有一个很大的好处,因为它为您提供了一个进行故障处理、编排和处理一致性的自然场所。
选项 2 似乎它也有缺点:
选项 3 在解耦天堂时,我真的认为这行不通,因为这一切都是从 UI 触发的,人们并不真正习惯于“在这个新学生出现之前去做其他事情”的方法。
谢谢
最佳答案
选项 1 和 2 会产生紧密耦合,应尽可能避免这种耦合,因为您希望服务是独立的。所以问题变成了:
我们如何使用基于事件的架构来做到这一点?
关于web-services - 微服务组合方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31573823/