SpringCloud微服务框架使用总结

本文详述了Spring Cloud微服务框架的使用,包括Eureka服务注册与发现、Ribbon负载均衡、Feign消费者调用、Hystrix熔断器、Zuul路由网关及服务配置中心。Spring Cloud提供了完整的微服务解决方案,如服务注册、负载均衡、熔断机制、智能路由等。通过Eureka集群,实现了服务的自我保护模式。Ribbon与Feign简化了服务调用,而Hystrix确保了服务的容错性。Zuul作为边缘服务,负责智能路由和过滤。配置中心Spring Cloud Config实现了配置的集中管理。文章深入浅出地介绍了Spring Cloud在微服务架构中的重要角色。
摘要由CSDN通过智能技术生成

关于Spring Cloud框架入门
入口:Spring Cloud入门
关于Spring Cloud框架中Eureka集群使用
入口:Eureka集群
关于Spring Cloud框架中Ribbon负载均衡及Feign消费者调用服务使用
入口:Ribbon以及Feign使用
关于Spring Cloud框架中熔断器Hystrix及服务监控Dashboard使用
入口:Hystrix熔断器使用示例
入口:Hystrix集群使用
关于Spring Cloud框架中Zuul网关使用
入口:Zuul网关使用
关于Spring Cloud框架中服务配置中心使用
入口:spring cloud config 使用

Spring Cloud简介

针对当前流行的微服务架构,比较有名的就是阿里的dubbospring clouddubbo只专注于服务之间的治理,如果我们需要使用配置中心、分布式跟踪这些内容都需要自己去集成,这样无形中增加了使用 Dubbo 的难度。spring cloud是spring家族的产品,几乎考虑了服务治理的方方面面,提供一整套解决方案,通过构建其框架下的各个组件可快速实现微服务设计中的相关功能,Spring cloud针对各个功能都有对应的组件框架可供选择使用。

Spring Cloud 作为Java 语言的微服务框架,它依赖于Spring Boot,有快速开发、持续交付和容易部署等特点。Spring Cloud 的组件非常多,涉及微服务的方方面面,井在开源社区Spring 和Netflix 、Pivotal 两大公司的推动下越来越完善。

微服务的功能主要体现在以下儿个方面:

  1. 服务的注册和发现(Eureka)。

  2. 服务的负载均衡(Ribbon)。

  3. 服务的容错(Hystrix)。

  4. 服务网关(zuul)。

  5. 服务配置的统一管理(config)。

  6. 服务监控(Dashboard与Turbine)

  7. 链路追踪。

  8. 实时日志。
    在这里插入图片描述
    微服务具有以下的特点:

  9. 按照业务来划分服务,单个服务代码量小,业务单一,易于维护。

  10. 每个微服务都有自己独立的基础组件,例如数据库、缓存等,且运行在独立的进程中。

  11. 微服务之间的通信是通过HTTP 协议或者消息组件,且具有容错能力。

  12. 微服务有一套服务治理的解决方案,服务之间不相合,可以随时加入和剔除服务。

  13. 单个微服务能够集群化部署,并且有负载均衡的能力。

  14. 整个微服务系统应该有一个完整的安全机制,包括用户验证、权限验证、资源保护等。

  15. 整个微服务系统有链路追踪的能力。

  16. 有一套完整的实时日志系统。

在这里插入图片描述
通过这张图,我们来了解一下各组件配置使用运行流程

  1. 请求统一通过API网关(Zuul)来访问内部服务.

  2. 网关接收到请求后,从注册中心(Eureka)获取可用服务

  3. 由Ribbon进行均衡负载后,分发到后端具体实例

  4. 微服务之间通过Feign进行通信处理业务

  5. Hystrix负责处理服务超时熔断

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
课程通过实际项目融入常用开发技术架构,讲授风格独特,提供详细上课日志及答疑,赠送配套的项目架构源码注释详细清晰且表达通俗,均能直接在实际项目中应用,正真的物超所值,价格实惠任务作业:综合运用《C#/.Net企业级系统架构设计实战精讲教程》课程所学知识技能设计一个学生成绩管理系统的架构。要求:1.系统基于MVC的三层架构,各层单独建不同的解决方案文件夹。2.采用Model First开发方式,设计架构时只需要设计学生表(TbStudent)和课程表(TbCourse)。学生表必须有的字段是ID、stuName、age;课程表必须有的字段是ID、courseName、content。3.数据访问层采用Entity Framework或NHibernate来实现,必须封装对上述表的增删改查方法。4.必须依赖接口编程,也就是必须要有数据访问层的接口层、业务逻辑层的接口层等接口层。层层之间必须减少依赖,可以通过简单工厂或抽象工厂。5.至少采用简单工厂、抽象工厂、Spring.Net等技术中的2种来减少层与层之间的依赖等。6.封装出DbSession类,让它拥有所有Dal层实例和SaveChanges方法。7.设计出数据访问层及业务逻辑层主要类的T4模板,以便实体增加时自动生成相应的类。8.表现层要设计相关的控制器和视图来验证设计的系统架构代码的正确性,必须含有验证增删改查的方法。9.开发平台一定要是Visual Studio平台,采用C#开发语言,数据库为SQL Server。10.提交整个系统架构的源文件及生成的数据库文件。(注意: 作业需写在CSDN博客中,请把作业链接贴在评论区,老师会定期逐个批改~~)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值