一、什么是微服务架构微服务架构是以开发一组小型服务的方式来开发一个独立的应用系统。其中每个小型服务都运行在自己的进程中并经常采用HTTP资源API这样轻量的机制来相互通信。二、分布式基本概念分布式系统就是一组部署在同一个网络下的多个通过网络来通信和协调的组件对外部而言表现的如同一个系统。根据一、二两点可以总结微服务架构是分布式系统分布式系统不一定是微服务。分布式系统分两种形式1.微服务架构每个组件代码不同但是相互配合实现业务2.集群模式(提升性能提高可用性)。三、企业级架构演进企业级软件架构随着技术发展和业务需求不断演进主要经历了以下几个关键阶段1. 单体架构 (Monolithic Architecture)将所有功能模块如用户界面、业务逻辑、数据访问打包在一个单一的、紧密耦合的应用程序中。优点是开发、测试、部署简单缺点是随着系统增长代码库庞大、技术栈固化、扩展困难、维护成本高。2. SOA架构 (Service-Oriented Architecture)基于服务的架构将应用拆分为一组可复用的的“服务”通过标准协议进行通信。优点是提高了复用性和灵活性缺点是ESB可能成为单点瓶颈架构复杂。3. MSA微服务架构 (Microservices Architecture)是SOA的一种更细粒度、更彻底的实现。每个微服务是一个独立的、可独立部署的小型业务单元围绕业务能力构建拥有自己的数据存储和技术栈通过轻量级协议如HTTP/REST、gRPC通信。优点是高度自治、技术异构、弹性伸缩、易于持续交付缺点是分布式系统复杂性如网络延迟、数据一致性、运维监控增加。4. 云原生架构 (Cloud-Native Architecture)一种充分利用云计算优势弹性、按需、自助服务来构建和运行应用的方法论。目标是实现应用的敏捷开发、弹性伸缩和高可用性。5. AI原生架构 (AI-Native Architecture)一种以人工智能为核心驱动力和首要设计原则的架构范式。它不仅仅是“在现有系统中加入AI模块”而是从数据采集、处理、存储到应用逻辑、交互界面都围绕AI模型的训练、推理、迭代和治理进行重构。特征包括数据与模型作为一等公民、向量数据库与特征工程、模型即服务MaaS、实时推理管道、可解释性与伦理考量。演进总结从单体到服务化SOA/MSA解决了耦合与扩展问题云原生解决了如何在现代基础设施上高效构建和运行分布式应用的问题AI原生则标志着架构重心从“处理业务流程”转向“处理智能与数据”以应对智能化业务的需求。四、分布式基本原理及基本定理基本原理CAP定理A原子性 C一致性 I隔离性 D持久性C一致性数据处于一致的状态A可用性整个分布式系统是可以使用P分区容错性因为网络故障产生网络分区分布式能够处理这种网络分区的错误CAP不可兼得(三选二)意义降低分布式系统设计和实现的门槛基本定理BASE理论BA: 基本可用S 软状态E 最终一致性意义降低了分布式系统的设计和实现的门槛五、Spring-Cloud介绍Spring Cloud 为开发者提供了相关工具以便快速构建分布式系统中的一些常见模式例如配置管理、服务发现、断路器、智能路由、微型代理、控制总线以及短生命周期的微服务。分布式系统的协调会引入大量模板化模式而使用 Spring Cloud开发者可以快速启动并运行实现了这些模式的服务和应用程序。它们能够在任何分布式环境中良好运行包括开发者自己的笔记本电脑、裸机数据中心以及 Cloud Foundry 等托管平台。spring-cloud 是一个微服务架构工具集伞形项目由多个子项目以及组件组成spring-cloud子项目spring-cloud-netflix 第一代微服务spring-cloud-alibabaspring-cloud 官方技术选型配置管理 nacos[a]服务发现nacos[a]负载均衡loadbalancer[c]服务调用openfeign[c]分布式事务seata[a]服务容错 sentinel[a]分布式追踪zipkin[c]服务网关gateway[a]
微服务架构简介
一、什么是微服务架构微服务架构是以开发一组小型服务的方式来开发一个独立的应用系统。其中每个小型服务都运行在自己的进程中并经常采用HTTP资源API这样轻量的机制来相互通信。二、分布式基本概念分布式系统就是一组部署在同一个网络下的多个通过网络来通信和协调的组件对外部而言表现的如同一个系统。根据一、二两点可以总结微服务架构是分布式系统分布式系统不一定是微服务。分布式系统分两种形式1.微服务架构每个组件代码不同但是相互配合实现业务2.集群模式(提升性能提高可用性)。三、企业级架构演进企业级软件架构随着技术发展和业务需求不断演进主要经历了以下几个关键阶段1. 单体架构 (Monolithic Architecture)将所有功能模块如用户界面、业务逻辑、数据访问打包在一个单一的、紧密耦合的应用程序中。优点是开发、测试、部署简单缺点是随着系统增长代码库庞大、技术栈固化、扩展困难、维护成本高。2. SOA架构 (Service-Oriented Architecture)基于服务的架构将应用拆分为一组可复用的的“服务”通过标准协议进行通信。优点是提高了复用性和灵活性缺点是ESB可能成为单点瓶颈架构复杂。3. MSA微服务架构 (Microservices Architecture)是SOA的一种更细粒度、更彻底的实现。每个微服务是一个独立的、可独立部署的小型业务单元围绕业务能力构建拥有自己的数据存储和技术栈通过轻量级协议如HTTP/REST、gRPC通信。优点是高度自治、技术异构、弹性伸缩、易于持续交付缺点是分布式系统复杂性如网络延迟、数据一致性、运维监控增加。4. 云原生架构 (Cloud-Native Architecture)一种充分利用云计算优势弹性、按需、自助服务来构建和运行应用的方法论。目标是实现应用的敏捷开发、弹性伸缩和高可用性。5. AI原生架构 (AI-Native Architecture)一种以人工智能为核心驱动力和首要设计原则的架构范式。它不仅仅是“在现有系统中加入AI模块”而是从数据采集、处理、存储到应用逻辑、交互界面都围绕AI模型的训练、推理、迭代和治理进行重构。特征包括数据与模型作为一等公民、向量数据库与特征工程、模型即服务MaaS、实时推理管道、可解释性与伦理考量。演进总结从单体到服务化SOA/MSA解决了耦合与扩展问题云原生解决了如何在现代基础设施上高效构建和运行分布式应用的问题AI原生则标志着架构重心从“处理业务流程”转向“处理智能与数据”以应对智能化业务的需求。四、分布式基本原理及基本定理基本原理CAP定理A原子性 C一致性 I隔离性 D持久性C一致性数据处于一致的状态A可用性整个分布式系统是可以使用P分区容错性因为网络故障产生网络分区分布式能够处理这种网络分区的错误CAP不可兼得(三选二)意义降低分布式系统设计和实现的门槛基本定理BASE理论BA: 基本可用S 软状态E 最终一致性意义降低了分布式系统的设计和实现的门槛五、Spring-Cloud介绍Spring Cloud 为开发者提供了相关工具以便快速构建分布式系统中的一些常见模式例如配置管理、服务发现、断路器、智能路由、微型代理、控制总线以及短生命周期的微服务。分布式系统的协调会引入大量模板化模式而使用 Spring Cloud开发者可以快速启动并运行实现了这些模式的服务和应用程序。它们能够在任何分布式环境中良好运行包括开发者自己的笔记本电脑、裸机数据中心以及 Cloud Foundry 等托管平台。spring-cloud 是一个微服务架构工具集伞形项目由多个子项目以及组件组成spring-cloud子项目spring-cloud-netflix 第一代微服务spring-cloud-alibabaspring-cloud 官方技术选型配置管理 nacos[a]服务发现nacos[a]负载均衡loadbalancer[c]服务调用openfeign[c]分布式事务seata[a]服务容错 sentinel[a]分布式追踪zipkin[c]服务网关gateway[a]