SpringCloud是什么

要聊SpringCloud,先说说什么是微服务.
微服务是一个叫马丁福勒的老头提出来的一种架构理念,有很多公司提出来解决方案,其中SpringCloud就是微服务解决方案的生态.

SpringCloud不是一种技术!是一种生态,生态肯定不是一种,为什么有这么多种解决方案,解决的是什么问题,得说说微服务中会出现什么问题

springcloud替代方案 springcloud解决什么问题_编程语言


↑这是微服务可能出现的几种问题,目前市面上有几种主流的解决方案,

  1. SpringCloud NetFlix 提供了一站式解决方案!
  2. Apache Dubbo Zookeeper 半自动(需要整合其他技术)
  3. SpringCloud Alibaba 提供了一站式解决方案!

诸多的解决方案其实解决的还是四个问题:
1.API
2.HTTP,RPC(通信问题)
3.注册和发现
4.熔断机制

那么我们的SpringCloud NetFlix是怎么解决这四个问题的呢!
通过我们的五大神兽
NetFlix的五大神兽:
白虎:Zuul
青龙:Feign
朱雀:Ribbon
玄武:Hystrix
麒麟:Eureka

其实非常的形象啊,比喻的这几种神兽分别代表了他们的职责和作用,也方便了各位读者的理解.

Eureka(麒麟):和王者里的花木兰麒麟志一样,麒麟负责掌管四大神兽,Eureka也是如此,它有服务注册与发现的作用,让杂乱冗余的微服务井井有条,方便管理

Feign(青龙)和Ribbon(朱雀):这两个功能差不多,都是服务之间的调用的,不过ribbon是使用template的getForObject和postForObject来调用的服务的,而Feign是用接口的方式调用,更加符合作者的面向接口编程的思想,所以我用feign比较多

Hystrix(玄武):Hystrix就像玄武一样,守护者我们的各个微服务,让他们不会因为程序出错而使整个微服务调用链条挂掉,它有熔断降级和监控的作用

Zuul(白虎):来了来了,白虎他来了,在我百星野王玄策面前,谁允许你进我的野区了!Zuul网关,保护了我们的内部的url不会被直接访问

今天主要给大家讲讲SpringCloud是什么有什么,还有是干什么的,下期为大家详细讲解SPringCloud的五大"神兽"