上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
找到适当的平衡
最终,决定服务的数量和每个服务的体积,是一个很复杂的问题。它需要在创建更多服务所带来的好处,以及创建整体更复杂的系统所带来的坏处之间,仔细进行平衡。
创建过少的服务会带来同单体系统类似的问题,过多开发人员会同时在一个服务上工作,并且单个服务本身会变得异常复杂。
创建过多的服务会使单个服务变得异常简单,但是由于服务之间的交互,整体系统会变得异常复杂。我真的听说过,有些系统利用微服务来定义只是简单返回一个布尔值“是”或“否”的服务—这显然过于偏激。为服务准确定义合适的大小没有错,但是这取决于你的系统和公司的文化。最好的建议是,当你定义服务和架构时,时刻记得在复杂性上保持平衡。
在系统、组织和公司文化之间找到适当的平衡,对于充分利用微服务的好处非常重要。
确定服务大小的适当平衡,对于创建一个优化运维和管理的应用程序架构,以及保持应用程序的高可用性和可伸缩性来说,都非常重要。