美文网首页DevOps
SpringCloud微服务学习(一)

SpringCloud微服务学习(一)

作者: 让你变好的过程从来都不会很舒服 | 来源:发表于2021-10-31 08:51 被阅读0次

    一、微服务架构的四个核心问题?

    1、服务很多、客户端该怎么访问?
    2、这么多服务?服务之间如何通信?
    3、这么多服务如何治理?
    4、服务挂了该怎么办?

    二、解决方案

    1、Spring Cloud NetFlix 一站式解决方案:
    api网关:zuul组件
    Feign --- HttpClient --- http通信方式,同步阻塞
    服务注册与发现:Eureka
    熔断机制:Hystrix

    2、Apach Dubbo Zookeeper 半自动,需要整合别人的:
    API:没有,找第三方组件,或者自己实现
    Dubbo
    Zookeeper
    没有,借助Hystrix
    Dubbo是一个高性能的基于java开发的RPC框架
    3、Spring Cloud Alibaba 一站式解决方案,更简单:
    新概念、服务网格:下一代微服务解决方案server mesh

    三、SpringBoot 和 Spring Cloud的关系

    1、SpringBoot专注于快速方便的开发单个个体微服务

    2、SpringCloud是关注全局的微服务协调整理治理框架,它将Springboot开发的一个个单体微服务整合并管理起来,为各个微服务之间提供:配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等集成服务;

    3、Springboot可以离开Springcloud独立使用开发项目、但是SpringCloud离不开SpringBoot,属于依赖关系

    4、SpringBoot专注于快速、方便的开发单个个体的微服务,SpringCloud专注于全局微服务治理框架

    四、Dubbo 和 Spring Cloud的对比

    社区活跃度:
    https://github.com/dubbo
    https://github.com/spring-cloud
    对比结果:


    最大区别:SpringCloud摒弃掉Dubbo的RPC通信,采用基于HTTP的REST方式
    严格来说,这两种方式各有优劣,虽然从一定程度上来说,后者牺牲了服务调用的性能、但是避免了RPC调用的带来的问题;而且REST相比于RPC更为灵活,服务提供方和调用方的依赖只依靠一纸契约,不存在代码级别的强依赖、这在强调快速演化的微服务环境下,显得更加合适;

    参考书:
    1、https://www.springcloud.cc/spring-cloud-netflix.html

    2、中文API文档:https://www.springcloud.cc/spring-cloud-dalston.html

    3、SpringCloud中国社区:http://springcloud.cn/

    4、SpringCloud中文网:https://www.springcloud.cc/

    相关文章

      网友评论

        本文标题:SpringCloud微服务学习(一)

        本文链接:https://www.haomeiwen.com/subject/orzifltx.html