springcloud
来源百度图片
springcloud是在springboot的基础上构建的,用于简化分布式系统构建的工具集;
工具集为配置管理、服务发现、智能路由、断路器、微代理和控制总线等操作提供了一种简单的开发方式;
Eureka: Netflix开发的一个服务发现框架
本身基于rest服务,主要用于定位运行在aws(Amazon web Service)域中的中间层服务,为达到负载均衡和中间层服务故障转移的目的;
包含两大组件:服务端发现组件(也称服务注册中心,提供服务的注册功能)、客户端发现组件【主要用于处理服务的发现与注册】
Feign: 负载均衡(动态代理)
Ribbon:主要功能是提供客户端的软件负载均衡算法;ribbon客户端组件提供了一系列完善的配置项,例如超时、重试等;
Hystrix :用来实现断路器、线程隔离等服务保护功能,目标在于通过控制那些访问远程系统、服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力;
Zuul : 本来基于jvm的路由器和服务端负载均衡器,后加入springcloud服务中,可以用来执行认证、动态路由、服务迁移、负载均衡、安全和动态响应处理等;
Config:【目前分布式配置中心组件例如:百度的disconf、阿里diamond、携程apollo等】
分布式配置中心组件,便于配置的统一管理;
支持本地、git、svn的存储方式;
另一套分布式:
springboot+dubbo+zookeeper
生活不是马拉松,是冲刺,慢跑不断切换