[ 后端与 Go语言 | 青训营笔记]

62 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 8 天

今天主要学习了 微服务框架 - 不变的基建

微服务架构是一种架构风格和架构思想,它倡导我们在传统软件应用架构的基础上,将系统业务按照功能拆分为更加细粒度的服务, 所拆分的每一个服务都是一个独立的应用。

这些应用对外提供公共的API,可以独立承担对外服务的职责,通过此种思想方式所开发的软件服务实体就是“微服务”,而围绕着微服务思想构建的一系列体系结构(包括开发、测试、部署等),我们可以将它称之为“微服务架构”。

根据微服务架构的定义,将传统单体架构拆分为微服务架构的方式。微服务架构在将应用分解的同时,规避了原本复杂度无止境的积累。每一个微服务专注于单一功能,并通过定义良好的接口清晰地表述服务边界。由于体积小、复杂度低,每个微服务可由一个小规模开发团队完全掌控,易于保持高可维护性,并提高了开发效率。

由于微服务具备独立的运行进程,所以每个微服务都可以独立部署。当某个微服务发生变更时,无需编译、部署整个应用。由微服务组成的应用相当于具备一系列可并行的发布流程,使得发布更加高效,同时降低了对生产环境所造成的风险,最终缩短应用交付周期。

微服务架构下,技术的选型是多样化的。每个团队都可以根据自身服务的需求和行业发展的现状,自由选择最适合的技术。由于每个微服务相对简单,当需要对技术进行升级时,所面临的风险较低,甚至完全重构一个微服务也是可行并容易的。