说明:
(1)本篇博客内容:简单介绍Spring Cloud项目,需要用到的核心组件;
Spring Cloud是一个成熟的微服务框架,其定位就是为开发人员提供各种工具,以快速构建分布式系统;Spring Cloud家族十分丰富;一般,我们想要使用什么功能,Spring Cloud家族一般都有相应的组件;
Spring Cloud的核心组件(所谓核心,可以这样理解:一个Spring Cloud项目想要运行,哪些组件是必不可少的;或者说,哪些组件是在90%以上的情况下,都是需要用到的);
(1)服务注册中心;
● Spring Cloud是多模块的,模块之间是需要调用的;调用之前,首先服务与服务之间要发现对方;
● Eureka就是一个不错注册中心;;我们会启动一个Eureka Server,并且把其他组件作为Eureka Client给注册上去;
(2)服务调用;
● 服务之间的调用方式,不同的体系是不一样的;比如,Dubbo体系采用的是RPC,Spring Cloud采用的是HTTP(具体上,就是REST);REST风格的API优雅简介,表达上准确明了;
● 在Spring Cloud项目中,我们会给不同模块设置REST风格的API,然后通过Feign实现调用;
● 在利用Feign进行调用的时候,还会用到Ribbon来进行负载均衡;
(3)服务网关;
● 服务网关采用Zuul组件;
● 在微服务项目中,有了网关,可以让不同模块之间配合的更好;
● 对于,外部用户来说,其看不到内部的不同模块,用户只看到网关就足够了;这可以提高系统的安全性;
● 通过网关,也可以设置过滤器,进行鉴权等;
(4)断路器;
● 使用Hystrix来实现断路功能;;这样以后,在流量很大,某个服务撑不住的时候,我们的项目整体上还能保持运转;
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)