H5W3
当前位置:H5W3 > java > 正文

【Java】spring cloud 干啥用的

看完springCloud 之后有如下感受,请大神解惑
1.感觉 springCloud 的封装就是把之前 nginx+ tomcat 干的活给封装起来啦。
2.springCloud 感觉没有Zookeeper+ Dubbo 用这爽,以前我们习惯 把service 设计为服务,controller 为路由层,实现不同平台之间的数据切换。但是springCloud 却相反。
3.性能 springCloud 基于http 协议,其他的是基于RPC协议,性能上差一节
所以想问下 如何理解springCloud 的这种设计

回答

每个问题回答下:
1.感觉 springCloud 的封装就是把之前 nginx+ tomcat 干的活给封装起来啦。

并不止,SpringCloud有完善的监控,服务注册,熔断还有重试机制

2.springCloud 感觉没有Zookeeper+ Dubbo 用这爽,以前我们习惯 把service 设计为服务,controller 为路由层,实现不同平台之间的数据切换。但是springCloud 却相反。

Zookeeper是CAP理论中保证CP,Eureka保证AP,对于注册中心,Eureka更符合需求。
Dubbo在服务注册发现上面,主要问题在于重试,默认情况需要服务做到幂等。但是对于服务发现的细粒度性更好,例如注册中心注册有接口的维度,eureka只到应用的维度(同一应用多个实例之间无法实现多版本)

SpringCloud是完整的解决方案,比Dubbo全面

3.性能 springCloud 基于http 协议,其他的是基于RPC协议,性能上差一节
所以想问下 如何理解springCloud 的这种设计
SpringCloud通用性更好,多语言环境,http协议更通用。Dubbo RPC只能在Dubbo环境(需要客户端也是Dubbo)用。
而且性能不会差太多,只是http协议重一些。默认配置上性能问题,可以调整下Spring Cloud的序列化方式,例如改成FastJson,性能就差不多了

Spring Cloud为开发人员提供了快速构建分布式系统中的一些通用模式(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁,领导选举,分布式 会话,群集状态)。 分布式系统的协调导致了锅炉板模式,并且使用Spring Cloud开发人员可以快速地站起来实现这些模式的服务和应用程序。 它们可以在任何分布式环境中正常工作,包括开发人员自己的笔记本电脑,裸机数据中心和受管平台,如Cloud Foundry。

[Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。微服务是可以独立部署、水平扩展、独立访问(或者有独立的数据库)的服务单元,Spring Cloud就是这些微服务的大管家,采用了微服务这种架构之后,项目的数量会非常多,Spring Cloud做为大管家就需要提供各种方案来维护整个生态。

作者:纯洁的微笑
链接:https://www.zhihu.com/questio…
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。][1]

我觉得spring cloud最大的好处只是把多个服务给汇总管理了 java最难的不就是配置,配置给你解决了不就是解决了最大的问题,java没有你不会的,只有你不知道的

spring 微服务 一站式解决方案 约定大于配置 让程序员更好的关注业务

分布式框架案

这种问题有意义吗?-1

本文地址:H5W3 » 【Java】spring cloud 干啥用的

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址