Spring Cloud原理

SpringCloud原理

如果还没有学习过,建议先了解以下微服务

什么是微服务?

  • 传统单体架构

    业务量小,所有代码放在一个项目里即可。这些项目部署在一台服务器即可。整个项目所有服务器都由这台服务器提供。

    • 优点:项目架构简单,适用于小型项目

    • 缺点:维护困难,所有模块公用一个数据库,项目要求所有技术统一。

  • 微服务是一种架构风格,由多个可以独立部署的应用组件组成。直白地说,是将传统单体结构的项目,按照服务进行彻底拆分。每个服务可以独自运行,每个服务都会占用线程

优点

服务原子化拆分,独立打包,独立部署,升级。利于扩展

使用轻量级机制通信,通常为HTTP API(RESTful)

所有服务都可以使用不同技术实现,不同数据存储技术。

微服务常见概念

  • 服务治理

    • 服务注册

    • 服务发现

    • 服务剔除

  • 服务调用

  • 服务网关

  • 服务容错

  • 链路追踪

  • 负载均衡

什么是SpringCloud

分布式微服务架构的一站式解决方案,一系列框架的有序集合。它并不是一个具体的框架。它是各微服务架构技术集合,亦称微服务全家桶。

SpringCloud常用组件

  • Eureka(服务注册与发现)

    管理微服务的通信地址,可以通过服务的名字实现服务调用

  • 负载均衡

    • Ribbon(客户端负载均衡)

    • Feign(服务端负载均衡,其实质也是依赖于Ribbon,只是将调用方式RestTemplete更改成Service接口)

    用来解决微服务之间的通信问题,服务发生调用的时将请求按照某种规则分发到多个目标服务器上。

  • Zuul(服务网关)

    所有的请求都需要经过zuul之后才能到达目标服务

  • Hystrix(断路器)

    一个请求可能需要多个微服务共同完成,一旦某个服务发生故障,可能导致整个调用链上的微服务全都异常,甚至整个微服务架构瘫痪。Hystrix就是用来解决微服务故障,保护微服务安全的组件。

  • Spring Cloud Config(分布式配置)

    作为分布式配置管理中心就是用来统一的管理服务的配置文件。

  • Spring Cloud Bus(消息总线)

    微服务中给各个微服务广播消息的一个组件,使用消息总线构建一个消息中心,其他微服务接入到消息中心,当消息总线发起消息,接入的微服务都可以收到消息。

  • Spring Cloud sleuth (微服务链路追踪)

    微服务中,一个请求可能需要多次服务调用,链路追踪用来监控维护之间的调用关系,让程序员方便直观的感受到一个请求经历了哪些微服务,以及服务的请求时间,是否有异常等。


__EOF__

本文作者3DG
本文链接https://www.cnblogs.com/3-DG/p/17760848.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   3DG  阅读(27)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示