微服务架构设计原则

微服务架构设计原则

前言

最近在维护公司另一条业务线产品,后端是微服务架构,从18年开发完成到现在一直没有迭代更新过,由于公司需要重新启动该业务线,故开始了解相关业务,着手重构;

前期了解业务时还心存乐观,但当看到项目代码才发现是地狱级难度,各个服务模块之间耦合严重,业务线之间的调用十分混乱,那么借着这次重构的机会,将产品服务架构中的常见弊端整理出来,并重温了一遍微服务设计原则。

1、微服务架构开发原则

1.1、总述

微服务架构是一种架构风格,它将大型单体应用程序拆分成许多小型服务,每个服务都独立运行并负责一个单独的职责。开发微服务架构时,应该遵循一些原则,以便使系统更加灵活,易于扩展和维护。

  1. 服务单一职责:每个服务都应该只负责一个单独的功能或职责,以便使系统更加灵活和可靠。
  2. 轻量级通信:服务之间应该使用轻量级的通信协议,如 HTTP,这样可以减少依赖,使系统更加灵活。
  3. 无状态:服务应该保持无状态,这样可以使系统更加可扩展。
  4. 可观察性:服务应该提供足够的监控指标,以便可以对系统的运行情况进行观察。
  5. 自治:服务应该尽可能地独立运行,不依赖于其他服务。
  6. 服务注册与发现:使用服务注册和发现机制可以让服务之间发现并交互。
  7. 可持续交付:通过自动化的构建,测试和部署流程,可以更快地将服务推到生产环境

你可能感兴趣的:(软件设计原则,分布式系统,微服务,java,运维,数据库,spring,cloud)