专栏首页芋道源码1024Apache Dubbo 服务框架,不限国内,有哪些替代品?

Apache Dubbo 服务框架,不限国内,有哪些替代品?

来源:https://www.zhihu.com/question/34101033/answer/743107819

老牌的,发展了很多年

ICE

支持多语言,功能丰富,文档一般,重量级:一个全面的RPC框架,支持C ++,C#,Java,JavaScript,Python等

  • https://zeroc.com/products/ice

Finagle

Finagle是 Twitter 基于 Netty 开发的支持容错的、协议无关的 RPC 框架,该框架支撑了 Twitter 的核心服务。Finagle是JVM的可扩展RPC系统,用于构建高并发服务器。Finagle为多个协议实现统一的客户端和服务器API,旨在实现高性能和并发性。Finagle的大多数代码都是协议无关的,简化了新协议的实现。整个设计跟Dubbo已经比较接近了。

  • https://www.infoq.cn/article/2014/05/twitter-finagle-intro
  • https://twitter.github.io/finagle/

新兴的

Apache Dubbo

Apache Dubbo |ˈdʌbəʊ| 是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。

  • http://dubbo.apache.org/zh-cn/

Spring Cloud

Spring Cloud全家桶大家一般都很熟悉了。它为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁定,领导选举,分布式会话,集群状态),使用Spring Cloud开发人员可以快速站起来实现这些模式的服务和应用程序。它们适用于任何分布式环境。

  • https://spring.io/projects/spring-cloud

Tars

腾讯出品,Tars是一个基于名称服务和Tars协议的高性能RPC框架,也是集成管理平台,并通过灵活的时间表实现托管服务。

  • https://github.com/TarsCloud/Tars

Motan

新浪微博出品,Motan是一套基于java开发的RPC框架,除了常规的点对点调用外,Motan还提供服务治理功能,包括服务节点的自动发现、摘除、高可用和负载均衡等。Motan具有良好的扩展性,主要模块都提供了多种不同的实现,例如支持多种注册中心,支持多种rpc协议等。

  • https://github.com/weibocom/motan/wiki/zh_userguide

BRPC

百度内最常使用的工业级RPC框架, 有1,000,000+个实例(不包含client)和上千种多种服务, 在百度内叫做"baidu-rpc",目前只开源C++版本。

  • https://github.com/apache/incubator-brpc/blob/master/README_cn.md

补充

补充一个 Grpc+etcd,轻量级的 golang 版本。

讨论

胖友,目前你们公司在使用什么服务框架,可以在留言区回复哟。


本文分享自微信公众号 - 芋道源码(javayuanma)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-07-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 使用Tensorflow实现口算检查器(1):模型选择

    周末在家帮娃检查口算作业,发现一个非常有意思的应用:拿手机对着作业拍照,立马就能知道有没有做错的题目。如果做错了,还会标记出来,并给出正确答案。

    云水木石
  • kubernetes 客户端KubeClient使用及常用api

    KubeClient是kubernetes 的C#语言客户端简单易用,KubeClient是.NET Core(目标netstandard1.4)的可扩展Kub...

    张善友
  • 在 Google Colab 中快速实践深度学习

    Colaboratory 是一个免费的 Jupyter 笔记本环境,不需要进行任何设置就可以使用,并且完全在云端运行。借助 Colaboratory,我们可以在...

    王下邀月熊
  • MySQL Master Slave Docker部署例子

    用Docker部署基于GTID的MySQL Master-Slave Replication例子。

    颇忒脱
  • 识狗君微信小程序的部署

    日历哗啦啦的往前翻,很快就要翻过2018,迎来2019年。今天预报了好久的大雪终于降临到了武汉,外面白雪皑皑,家中温暖如春,这个时候感觉最惬意。古人有诗云:绿蚁...

    云水木石
  • Linux:netstat 面试答疑

    在面试的过程中,总不可避免会问到与 操作系统 和 网络 相关的内容,因为这个确实是工作上经常打交道的内容;

    Lin_R
  • 如何使用如何使用 GitHub for Windows?20分钟搞定基本功能!

    github是一个网站,给用户提供git服务。这样你就不用自己部署git系统,直接用注册个账号,用他们提供的git服务就可以。 那是不是只有一个提供可以git...

    浩Coding
  • 从人工智能鉴黄模型,尝试TensorRT优化

    随着互联网的快速发展,越来越多的图片和视频出现在网络,特别是UCG产品,激发人们上传图片和视频的热情,比如微信每天上传的图片就高达10亿多张。每个人都可以上传,...

    云水木石
  • 码云使用教程--Linux下用git命令上传和下载项目

    最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑。不过,慢慢地有人把它移植到了Windows上。现在,Git可以在L...

    浩Coding
  • Export failed for github.com/hashicorp/consul: Unable to export source: exit status 128

    go项目,使用glide install命令去下载安装依赖,依赖中有个github.com/hashicorp/consul

    千往

扫码关注云+社区

领取腾讯云代金券