因此,微服务实现了重要的模块化原则,带来实质效益:
尽管如此,从一个单一的(虽然轻微肥胖的)应用程序进入到一个分布式的微服务系统,这带来了巨大管理复杂性。
突然间,您需要持续部署许多不同的(可能是容器化的)服务。新的关注点开始出现:服务发现、分布式日志记录、跟踪等。你现在更容易出分布式服务各种错误。接口和配置管理的版本控制也成为新的需要关注的地方,问题的列表还会继续增长。(高可用架构小编注:以学习“新技术”为己任的工程师未必会这么想)
微服务之间连接的复杂性在于连接了所有微服务的业务逻辑,你不能简单粗暴分开你的单体式服务来实现微服务。虽然”意面代码”的单体服务是有问题的,但是引入网络边界放在新的服务之间,会使这些令人纠缠的问题升级到彻头彻尾的痛苦。
推荐阅读
本文为高可用架构翻译,转载请注明出处,技术原创及架构实践文章,欢迎通过公众号菜单「联系我们」进行投稿。
高可用架构
改变互联网的构建方式
长按二维码 关注「高可用架构」公众号