微服务新手入门

一、微服务概念

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

微服务

  • 服务拆分

  • 远程调用

  • 服务治理

  • 请求路由

  • 身份认证

  • 配置管理

  • 服务保护

  • 分布式事务

  • 异步通信

  • 消息可靠性

  • 延迟消息

  • 分布式搜素

  • 倒排索引

  • 数据聚合

单体架构

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

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

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

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

微服务架构

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

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

SpringCloud

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

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

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

  • 服务远程调用:OpenFeign、Dubbo

  • 服务链路监控:Zipkin、Sleuth

  • 统一配置管理:SpringCloudConfig、Nacos

  • 统一网关路由:SpringCloudGateway、Zuul

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

服务治理:

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

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

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

注册中心:推送变更

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

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

相关推荐
未来之窗软件服务2 小时前
终端优先同步架构终端场景下轻量化、高可用通信模型-东方仙盟
架构·东方仙盟·阿雪技术观·网络震荡·dns污染·数据中继器·边界网关
坐看风云变幻7 小时前
《系统架构师成长之路》第 8 期|微服务:单体拆分的时机、粒度与通信
微服务·架构·系统架构
Song_RsHt8 小时前
Redis 与微服务,什么场景下无可替代
java·redis·后端·学习·微服务
孔令飞9 小时前
知己知彼,百战不殆:AI SKILL 实现原理剖析
云原生·go·ai编程
Figo_Cheung10 小时前
Figo潜空间层级认知理论:基于齐夫拓扑与黎曼几何的结构化模型研究
人工智能·架构·空间计算
洞见前行10 小时前
用 Tinker 热更新反向实现插件化:两个独立 APK 合二为一的原理详解
架构
这个DBA有点耶10 小时前
分布式集群的“最后一公里”:分片集群与透明分布式集群的工程代价拆解
数据库·分布式·架构
分布式存储与RustFS12 小时前
把 LSM 引擎直接架在对象存储上:slatedb 能不能跑在 RustFS 上?
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
another heaven13 小时前
【C/C++ C++ 面向对象架构的五大特点与能力场景:封装、继承、多态、抽象与 RAII(含实战案例)】
c语言·c++·架构
微订校园外卖平台14 小时前
乡镇外卖跑腿代办系统怎么选:四端架构与实施核对
架构·外卖系统·本地生活·微订