聊聊微服务架构

随着也业务的不断发展,原来可行的应用,逐渐演变成了单体地狱(泥球模式:随意的架构、庞大的、草率的、布满了胶带和线路,如同意大利面条一般的代码丛林),软件的交付速度已经放缓,敏捷开发和部署已经不可能。

逃离单体地狱的途径必将是选择微服务架构(拯救之道)。

微服务架构作为模块化的一种形式。每个微服务有其独特的独立性,且都拥有自己的数据库。微服务架构的一个关键特性是每一个微服务之间都是松耦合的,它们仅仅通过API进行通信。

微服务架构的好处:

  • 使大型的复杂应用程序可以持续交付和持续部署
  • 每个微服务相对较小并容易维护
  • 服务可以独立部署
  • 服务可以独立扩展
  • 微服务架构可以实现团队的自治
  • 更容易实验和采纳新的技术
  • 更好的容错性

微服务架构的弊端:

  • 微服务的拆分和定义是一项挑战
  • 分布式系统带来的复杂性,使开发、测试和部署变得更困难(运维复杂度化解开发复杂度的痛点)
  • 当部署跨多个服务的功能时需要谨慎地协调更多开发团队
  • 开发者需要思考到底应该在应用的什么阶段使用微服务架构

猜你喜欢

转载自blog.csdn.net/simplemurrina/article/details/103793505