微服务新手入门

一、微服务概念

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

微服务

  • 服务拆分

  • 远程调用

  • 服务治理

  • 请求路由

  • 身份认证

  • 配置管理

  • 服务保护

  • 分布式事务

  • 异步通信

  • 消息可靠性

  • 延迟消息

  • 分布式搜素

  • 倒排索引

  • 数据聚合

单体架构

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

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

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

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

微服务架构

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

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

SpringCloud

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

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

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

  • 服务远程调用:OpenFeign、Dubbo

  • 服务链路监控:Zipkin、Sleuth

  • 统一配置管理:SpringCloudConfig、Nacos

  • 统一网关路由:SpringCloudGateway、Zuul

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

服务治理:

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

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

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

注册中心:推送变更

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

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

相关推荐
岁岁岁平安6 小时前
分布式系统相关概念(单体、集群、分布式、分布式集群、微服务)
分布式·微服务
眠りたいです6 小时前
基于脚手架微服务的视频点播系统-脚手架开发部分-brpc中间件介绍与使用及二次封装
c++·微服务·中间件·rpc·架构·brpc
Broken Arrows8 小时前
k8s学习(二)——kubernetes整体架构及组件解析
学习·架构·kubernetes
眠りたいです10 小时前
基于脚手架微服务的视频点播系统-脚手架开发部分-jsoncpp,protobuf,Cpp-httplib与WebSocketpp中间件介绍与使用
c++·websocket·微服务·中间件·json·protobuf·cpp-httplib
唐僧洗头爱飘柔952710 小时前
【SpringCloud(1)】初识微服务架构:创建一个简单的微服务;java与Spring与微服务;初入RestTemplate
java·spring·spring cloud·微服务·架构·resttemplate·java微服务技术栈
Light6010 小时前
领码方案|微服务与SOA的世纪对话(3):方法论新生——DDD、服务网格与AI Ops的融合之道
运维·人工智能·微服务·ddd·soa·服务网格·ai ops
努力搬砖的咸鱼10 小时前
Docker 三剑客:镜像、容器、仓库
docker·云原生·容器
可触的未来,发芽的智生12 小时前
触摸未来2025.10.05:悟神经网络符号之伤,拥抱声音的宇宙
人工智能·python·神经网络·算法·架构
yunmi_13 小时前
微服务,Spring Cloud 和 Eureka:服务发现工具
java·spring boot·spring cloud·微服务·eureka·架构·服务发现
一叶飘零_sweeeet13 小时前
从 0 到 PB 级存储:MinIO 分布式文件系统实战指南与架构解密
java·架构·大文件存储