微服务解决方案
1.基于spring cloud 的的微服务解决方案
在实际应用场景中,spring cloud 的技术选型是中立的,因此可以随意搭配使用。基于spring cloud的服务落地解决方案可以分为三种:
组件
1.服务发现:eureka,consul,etcd,阿里nacos
2.公用组件:服务间调用组件 feign,负载均衡组件 ribbon,熔断器组件 hytrix
3.网关:性能低:zuul;性能高:spring cloud Gateway;或者 自研网管中间件
4.配置中心 spring cloud config、携程阿波罗、阿里nacos
5.全链路监控:zikpin、pinpoint、skywalking(推荐)
2.基于Dubbo实现微服务解决方案
2012年,阿里爸爸在github上开源了 Java分布式服务治理框架Dubbo,但是Dubbo未来定位并不是一个微服务全面解决方案,而是服务中的一个部分,一个重要组件,专注于RPC领域,最近又开源了nacos,定位是一个更容易构建一个云原生应用的动态服务,配置,管理的平台,因此dubbo的解决方案是:Dubbo + Nacos +其他。
3.什么是中间件
中间件和操作系统,数据库是传统基础软件的三驾马车。现在的定义为 :
向下屏蔽异构的软硬件资源和网络资源,向上提供应用开发,运行,维护等全生命周期的统一计算环境与管理,启到承上启下的作用。
4.什么是spring cloud
spring cloud 也是一个中间件,基于springboot 开发的 提供了一整套完整的微服务解决方案。包括上面说的那些组件最新版本finchley。