一、RPC 框架 Dubbo

  • Dubbo/ Dubbox

      阿里巴巴公司开源的一个Java高性能优秀的服务框架,可以和Spring框架无缝集成,相关资料很丰富。

遗憾的是已经停止维护了,相关的依赖类比如Spring,Netty还是很老的版本。倒是当当网之类的再继续维维护,即Dubbox,并且实现了REST的支持。

Dubbo主要实现了服务治理,其他为保证集群安全、可维护、可测试等特性方面都没有很好的实现,但是几乎大部分关键组件都能找到第三方开源来实现。

      所以,如果选择Dubbo请务必在各个环节做好整套解决方案的准备,不然很可能随着服务数量的增长,整个团队都将疲于应付各种架构上不足引起的困难,不能让各环节人员真正的专注于业务逻辑。

  • Motan

      新浪微博的服务治理框架,2016年5月开源,Motan是一个小而精的 RPC 框架,它的特点是简单、易用,是一个轻量级 RPC框架。

      与Dubbo相比,Motan在功能方面并没有那么全面,也没有实现特别多的扩展。用的人比较少,功能和稳定性有待观望。对跨语言调用支持较差,主要支持java。

  • Spring Cloud(推荐)

      Spring Cloud 完全基于Spring Boot,是一个非常新的项目,2016年才 1.0 release。版本提升非常迅速,发展势头良好。

Spring Cloud依然发扬了Spring Source整合一切的作风,以标准化的姿态将一些微服务架构的成熟产品与框架揉为一体,并继承了Spring Boot简单配置、快速开发、轻松部署的特点,让原本复杂的架构工作变得相对容易上手一些。服务调用方式是基于REST API的。

       缺点是项目很年轻,很少见到国内业界有人在生产上成套使用,一般都是只有其中一两个组件。相关的技术文档大部分是英文的,案例也相对较少,使用的话需要摸索的时间会长一些。

      下图是Spring Cloud和Dubbo的对比:

后台组件技术

  • gRPC

      Google发布的开源RPC框架,高性能、开源、将移动和HTTP/2放在首位的通用的RPC框架,基于HTTP/2, netty4.1, proto3, 拥有非常丰富而实用的特性,堪称RPC 框架的典范。

      但它本身它不是分布式的,所以要实现上面的框架的功能需要进一步的开发。

 

二、网络应用框架 Netty

三、队列中间件 RocketMQ

四、数据库中间件 Sharding-JDBC

五、数据库中间件 MyCAT

六、TCC事务中间件 TCC-Transaction

七、调度作业中间件 Elastic-Job-Lite

八、调度作业中间件 Elastic-Job-Cloud

九、注册中心 Eureka

十、熔断器 Hystrix

十一、网关 Spring-Cloud-Gateway

十二、配置中心 Apollo

十三、链路追踪 SkyWalking

十四、数据持久层框架 MyBatis

十五、J2EE 框架 Spring Framework

十六、MVC 框架 Spring MVC

十七、Spring 应用开发框架 Spring Boot

十八、数据仓库

十九、可视化

相关文章:

  • 2021-11-08
  • 2021-07-21
  • 2021-05-20
  • 2021-11-01
  • 2022-12-23
  • 2021-11-30
  • 2022-03-09
  • 2021-07-07
猜你喜欢
  • 2021-05-16
  • 2021-08-15
  • 2021-11-18
  • 2021-11-29
  • 2021-07-16
  • 2022-01-21
  • 2021-05-18
相关资源
相似解决方案