当前位置: 移动技术网 > IT编程>开发语言>Java > springclod_入门

springclod_入门

2020年07月17日  | 移动技术网IT编程  | 我要评论
万事开头难,先搞清楚几个名词
    集群:
        定义
            通过多台计算机完成同一个工作,达到更高的效率。
            两机或多机内容、工作过程等完全一样。如果一台死机,另一台可以起作用。
        例子
            例如abc3个人一起开发java
            部署的项目随着访问人数越来越多,性能越来越差怎么办,再买台服务器,把这个项目再部署到新的环境里
    分布式:
        定义
            一个业务分拆多个子业务,部署在不同的服务器上(不同的服务器,运行不同的代码,为了同一个目的)
            多个计算机完成各自独立的模块从而构建一个系统的应用
            模块之间独立,各做各的事,便于扩展,复用性高
            高吞吐量
        例子
            a负责前段,b负责后端,c负责数据库
            某个任务需要一个机器运行10个小时,将该任务用10台机器的分布式跑,
            将这个任务拆分成10个小任务,可能2个小时就跑完了
    分布式集群
        定义:
            既有分布式,又有集群
        例子:
            5个小伙子写Java,4个小伙子写前端,2个小伙子做测试
springcloud
    在搞清楚了集群,分布式之后,springcloud自然就懂了
    就是给集群/分布式,微服务提供一整套的实现方案的,牛不牛逼!
SpringCloud的基础功能:
    服务治理: Spring Cloud Eureka
        场景:
            解决子系统直接互相调用接口,如果其中一个ip改变了,手动维护静态Ip简直是噩梦的问题
        实现:
            建立一个独立于所有其他微服务的E服务,这里注册所有微服务的ip,接口,其他服务不再通过ip调用,而是通过e服务的清单来调用,通过不太会变得服务名找到Ip
    客户端负载均衡: Spring Cloud Ribbon
        场景:
            解决集群之间如何做到负载均衡的功能
        例子:
            一个双11秒杀系统准备上线,3个集群,如何才能做到在当天将高并发请求均衡的分配到3台服务器上呢  
        实现:
            Ribbon采用客户端负载均衡,客户端可以从Eureka Server中得到一份服务清单,
            在发送请求时通过负载均衡算法,在多个服务器之间选择一个进行访问)
    服务容错保护: Spring Cloud Hystrix
        场景:
            在高并发的情况下,由于单个服务的延迟,可能导致所有的请求都处于延迟状态,
            甚至在几秒钟就使服务处于负载饱和的状态,资源耗尽,直到不可用,
            最终导致这个分布式系统都不可用,这就是“雪崩”。
        实现:
            Hystrix通过断路器、线程隔离等措施
            简而言之,它能够监控整个系统的请求,如果某个微服务的请求中断,熔断器中断,后续对该服务请求会直接返回状态码。过一段时间再回复熔断器
    声明式服务调用: Spring Cloud Feign
        场景
            Ribbon和Hystrix作为基础工具类框架广泛地应用在各个微服务的实现中。
            为了简化我们的开发,Spring Cloud Feign出现了
            整合了Ribbon 与 Hystrix,还提供了声明式的服务调用(不再通过RestTemplate)。
            Feign是一种声明式、模板化的HTTP客户端。
            在Spring Cloud中使用Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,
            开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。
    API网关服务:Spring Cloud Zuul
        场景:
            所有的服务都需要权限校验,荣誉
        实现:
            Zuul整合Eureka,将自身变成服务治理框架,同时所有外层调用走网关,使得维护和校验由自己实现,类似于sso单点登录
    分布式配置中心: Spring Cloud Config
        场景:
            随着业务的扩展,我们的服务会越来越多,越来越多。每个服务都有自己的配置文件。
            10个集群的配置文件,一个改动,都得改动
            在分布式系统中,某一个基础服务信息变更,都很可能会引起一系列的更新和重启
        实现:Spring Cloud Config就是将配置文件放到统一的位置管理(比如GitHub),客户端通过接口去获取这些配置文件。

 

本文地址:https://blog.csdn.net/m0_37840243/article/details/107387131

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网