微服务新手入门

一、微服务概念

微服务是一种软件架构风格,ta是以专注于单一职责的很多小型项目为基础,组合出复杂的大型应用。

微服务

  • 服务拆分

  • 远程调用

  • 服务治理

  • 请求路由

  • 身份认证

  • 配置管理

  • 服务保护

  • 分布式事务

  • 异步通信

  • 消息可靠性

  • 延迟消息

  • 分布式搜素

  • 倒排索引

  • 数据聚合

单体架构

单体架构:将业务的所有功能集中在一个项目中开发,打成一个包部署。

优点:架构简单;部署成本低

缺点:团队写作成本高;系统发布效率低;系统可用性差

总结:单体架构适合开发功能相对简单,规模较小的项目。

微服务架构

微服务架构:是服务化思想指导下的一套最佳实践架构方案。服务化,就是把单体架构中的功能模块拆分为多个独立项目。

优点:粒度小;团队自治;服务自治。

SpringCloud

SpringCloud是目前国内使用最广泛的微服务框架。

SpringCloud集成了各种微服务功能组件,并基于SpringBoot实现了这些组件的自动装配,从而提供了良好的开箱即用体验。

  • 服务注册发现:Eureka、Nacos、Consul

  • 服务远程调用:OpenFeign、Dubbo

  • 服务链路监控:Zipkin、Sleuth

  • 统一配置管理:SpringCloudConfig、Nacos

  • 统一网关路由:SpringCloudGateway、Zuul

  • 流控、降级、保护:Hystix、Sentinel

服务治理:

注册服务 -> 订阅服务 -> 负载均衡 -> 远程调用

服务提供者:注册服务;心跳续约

服务调用者:订阅服务;负载均衡;远程调用

注册中心:推送变更

Nacos是目前国内企业中占比最多的注册中心组件。是阿里巴巴的产品,目前已经加入SpringCloudAlibaba中。

Nacos:一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

相关推荐
IT大白鼠4 小时前
图数据库系列 · 第 02 篇——架构拆解:原生图存储到因果集群
数据库·架构·nosql
mftang5 小时前
CANopen协议:基于CAN的高层协议架构、通信模型与工业应用深度解析
架构·canopen·对象字典·canopen fd
寻林写彡8 小时前
01| 裸机部署 K8S:从零搭建生产可用集群
云原生·kubernetes
Learn_PLC9 小时前
自动化工程师Demand与工业机器人技术发展的未来趋势分析
架构
Learn_PLC9 小时前
PLC编程就业前景与自动化人才短缺解析及技能提升补贴政策
架构
晚安code10 小时前
RPC 到底是什么:微服务内部调用的首选,以及它藏起来的三个坑
微服务·rpc
晚安code10 小时前
微服务架构和单体架构的区别:拆之前你得先想清楚这件事
微服务·架构
东方佑10 小时前
v24 (Hybrid2Fast) 架构与实验报告
人工智能·深度学习·语言模型·自然语言处理·架构
狂奔蜗牛(bradley)11 小时前
把 EtherCAT 初始化从 FPGA 搬到 ARM:命令通道的接口设计与11个坑
arm开发·人工智能·fpga开发·架构