
226
|
第
17
章
17.2
业务领域和界限上下文
业务在特定的领域内执行操作,这个领域又可以分解为几个子领域。业务问题的解决方案
是由界限上下文定义的,界限上下文标识了边界,这些边界包括与子域相关的输入、输
出、事件、需求、流程和数据模型。
可以将微服务实现构建成与这些界限上下文保持一致。由此产生的服务和工作流可与问题
和业务需求保持一致。通用数据通信层确保了微服务实现可以足够灵活以适应业务领域和
随后的界限上下文的变化,从而有助于促进这些一致性。
17.3
可共享的工具和基础设施
事件驱动型微服务需要对允许其大规模运行的系统和工具进行投资,这种投资被称为微服
务税。事件代理是系统的核心,因为它提供了服务之间的基本通信,并且免除了每个服务
管理自己的数据通信解决方案的责任。
微服务架构放大了围绕创建、管理和部署应用程序的所有问题,并受益于这些过程的标准
化和流水线化。随着微服务数量的增长,这一点变得更为关键,因为虽然每个新的微服务
都会产生开销,但非标准化的微服务可能会比遵循协议的微服务产生更大的开销。
构成微服务税的基本服务如下。
•
事件代理
• schema
注册表和数据探测服务
• CMS
•
持续集成、交付和部署服务
•
监控和日志服务
支付微服务税不太可能是一个全有或全无的过程。组织通常会从事件代理服务或
CMS
开
始,然后根据需要添加其他服务。幸运的是,一些计算服务提供商,比如谷歌、微软和亚
马逊,已经创建了显著降低开销的服务。你必须权衡自己的方案,在将这些业务外包给服
务提供商或在内部构建自己的系统之间做出选择。 ...