1、既然是服务,就有服务注册中心,它的作用就是把所有的服务注册到里面,当调用的时候直接去拿就行了,这是Eureka。
2、有时候会出现一个服务注册多个,比如我们调用用户服务,一下子就会拿到2-4个,这个时候就要基于负载均衡策略去完成调用,这个功能就是Ribbon或者Feign。
3、当我们拿到一个服务的时候,有可能这个服务突然挂掉了,这个时候我们为了保证服务的健壮性,我们要用到Hystrix,他主要是做熔断和降级以及限流的。
4、在众多的服务当中可能会有一些配置,而这些配置分散到各个项目中,不方便管理,这时候就需要有一个配置中心,也就是SpringCloud的Config。
5、最后一个就是网关,我们的所有服务最终目的都是暴露给前端调用的,那么一个服务有一个地址,这样管理起来特别不方便,这个时候网关就会统一地址,这是第一个作用,第二个就是网关会对服务的调用做统一鉴权管理,这就是SpringCloud的zull。
微服务这5个组件其实和windows的控制面板类似。(个人理解)