赞
踩
目录
这里先附上SpringCloud的官网:Spring Cloud
官网上对SpringCloud的介绍:
Spring Cloud为开发人员提供了工具来快速构建分布式系统中的一些常见模式(例如,配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁、领导选举、分布式会话、集群状态)。分布式系统的协调导致“锅炉板”模式,使用Spring Cloud开发人员可以快速建立实现这些模式的服务和应用程序。它们可以在任何分布式环境中很好地工作,包括开发人员自己的笔记本电脑、裸机数据中心和托管平台,如Cloud Foundry。
简单来说:SpringCloud就是一个基于SpringBoot,用来简化分布式开发的一个微服务架构开发工具
Spring Cloud专注于为典型用例提供良好的开箱即用体验,以及覆盖其他的可扩展性机制。
Distributed/versioned configuration(分布式/版本化配置)
Service registration and discovery(服务注册和发现)
Routing(路由)
Service-to-service calls(服务与服务之间的调用)
Load balancing(负载平衡)
Circuit Breakers(断路器)
Global locks(全局锁)
Leadership election and cluster state(领导选举与集群状态)
Distributed messaging(分布式消息传递)
SpringCloud的五大核心组件为Eureka、Fegin、Ribbon、Hystrix、Zull
SpringCloud提供了多种注册中心的支持,这其中就包括Eureka、ZooKeeper等,我们平时常用的也是这两种
回归正题,Eureka主要就是用来注册服务的,其中包括两部分:Eureka Client、Eureka Server
应用启动后,Eureka Client会向Eureka Server发送心跳,一般默认周期为30秒,如果Eureka在多个心跳周期内(一般为90秒)没有接受到某个节点的心跳,Eureka就会进入自我保护机制
Feign是一个HTTP请求的轻量级客户端框架。通过 接口+注解 的方式发起HTTP请求的调用,而不是像Java中通过封装HTTP请求报文的方式直接调用。
Feign执行流程:
Feign最核心的就是动态代理,同时整合了Ribbon和Hystrix,具备负载均衡、隔离、熔断和降级功能
Ribbon是一个客户端的负载均衡器,他提供对大量的HTTP和TCP客户端的访问控制
Ribbon负载均衡策略:简单轮询、权重、随机、重试等多种策略
网关相当于一个网络服务架构的入口,所有网络请求必须通过网关转发到具体的服务。
主要功能:统一管理微服务请求、负载均衡、动态路由、权限控制、监控、静态资源处理等
Gateway是一个在系统框架中起到入口和出口作用的组件,负责接受外部请求并转发给相应的服务,并将服务的相应返回给请求方。
根据网关的流程图可以看出,网关的核心就是一组过滤器按照先后顺序来执行过滤操作
主要功能:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。