Dubbo 扩展 Dubbox

Apache
Java
跨平台
当当网
2014-10-23
terenceyhj

Dubbo是一个被国内很多互联网公司广泛使用的开源分布式服务框架,即使从国际视野来看应该也是一个非常全面的SOA基础框架。作为一个重要的技术研究课题,在当当网我们根据自身的需求,为Dubbo实现了一些新的功能,并将其命名为Dubbox(即Dubbo eXtensions)。

主要的新功能包括:

  • 支持REST风格远程调用(HTTP + JSON/XML):基于非常成熟的JBoss RestEasy框架,在dubbo中实现了REST风格(HTTP + JSON/XML)的远程调用,以显著简化企业内部的跨语言交互,同时显著简化企业对外的Open API、无线API甚至AJAX服务端等等的开发。事实上,这个REST调用也使得Dubbo可以对当今特别流行的“微服务”架构提供基础性支持。 另外,REST调用也达到了比较高的性能,在基准测试下,HTTP + JSON与Dubbo 2.x默认的RPC协议(即TCP + Hessian2二进制序列化)之间只有1.5倍左右的差距,详见下文的基准测试报告。

  • 支持基于Kryo和FST的Java高效序列化实现:基于当今比较知名的KryoFST高性能序列化库,为Dubbo 默认的RPC协议添加新的序列化实现,并优化调整了其序列化体系,比较显著的提高了Dubbo RPC的性能,详见下图和文档中的基准测试报告。

  • 支持基于嵌入式Tomcat的HTTP remoting体系:基于嵌入式tomcat实现dubbo的 HTTP remoting体系(即dubbo-remoting-http),用以逐步取代Dubbo中旧版本的嵌入式Jetty,可以显著的提高REST等的远 程调用性能,并将Servlet API的支持从2.5升级到3.1。(注:除了REST,dubbo中的WebServices、Hessian、HTTP Invoker等协议都基于这个HTTP remoting体系)。

  • 升级Spring:将dubbo中Spring由2.x升级到目前最常用的3.x版本,减少项目中版本冲突带来的麻烦。

  • 升级ZooKeeper客户端:将dubbo中的zookeeper客户端升级到最新的版本,以修正老版本中包含的bug。

上面很多功能已在当当网内部稳定的使用,现在开源出来,供大家参考和指正。也希望感兴趣的朋友也来为Dubbo贡献更多的改进。

注:dubbox和dubbo 2.x是兼容的,没有改变dubbo的任何已有的功能和配置方式(除了升级了Spring之类的版本)。

加载中

评论(11)

啥不懂
啥不懂
都不维护了,差评
呵呵小短腿
呵呵小短腿
Could not find MessageBodyWriter for response object of type: wcf.demo.dubbox.api.User of media type: application/json;charset=UTF-8、 有谁遇到过这个问题吗
袁小猴
袁小猴
上面图表比对展示的平均响应时间单位是秒还是毫秒?因为本地测试了下,一个返回对象的get请求,响应都是一秒多。
小99
小99
2.8.4我看说明可以使用jdk7,但是编译报错,我网上查一些类需要jdk8,是这样吗?
alyces
alyces
早都开始使用spring 4.X ,是不是需要对项目中的spring做替换呢
深海-蓝鲸
深海-蓝鲸
非常好的架构,顶一下
424
424
收录时间:2014-10-23
动力火车
加油
paulzhu
paulzhu
@小99 你们用的什么?
Felix_Yao
Felix_Yao
dubbox有适用的api网关么?还是说它自己就能做到? #Dubbox#

当当网开源 Dubbox,扩展 Dubbo 服务框架支持REST风格远程调用

当当网近日开源了Dubbox项目,可为Dubbo服务框架提供多项扩展功能,包括REST风格远程调用、Kryo/FST序列化等等。 当当网架构部和技术委员会架构师沈理向InfoQ中文站介绍了Dubbox项目,开发背...

2014/10/23 23:52

没有更多内容

加载失败,请刷新页面

没有更多内容

1
回答
dubbo 服务端设置超时终止执行

dubbo设置超时时间后,无论实在服务端还是消费端设置了,都只会造成消费端超时。但是服务端还在继续执行,有什么办法或者参数配置,可以在超时的时候直接终止服...

09/08 16:10
1
回答
dubbox 项目启动报错,java.lang.IncompatibleClassChangeError: Implementing class

这是 错误日志。 八月 25, 2015 10:29:23 上午 org.apache.catalina.core.StandardContext fil...

2015/08/25 10:37
1
回答
springboot 整合dubbox,采用外部应用服务器的servlet容器配置问题

在使用该配置使用外部容器时,官方说明: 如果你是用spring的ContextLoaderListener来加载spring,则必须保证Bootstrap...

03/01 14:13
3
回答
Jfinal集成dubbo可以暴露restfull API 供移动端直接使用吗

Jfinal集成dubbo可以暴露restfull API 供移动端直接使用吗? 貌似dubbox支持暴露restfullAPI的功能,能支持dubbox 吗?

01/04 09:30
3
回答
Dubbox Rest 接口Get请求时参数为对象的时候该如何配置

像这样配置可以吗,需不需要加什么注解 @GET @Path("getViolationPoi") @Produces({ ContentType.APPL...

2016/03/04 15:24
1
回答
求解!maven编译dubbo,在dubbo-container-spring提示无法访问BeanNameAware

[INFO] ----------------------------------------------------------------------...

2017/07/13 09:47
4
回答
项目中引用多个dubbo服务,zookeeper注册中心地址不一样问题

现在的项目我自己有一个dubbo服务,我还要引用其他项目的服务,就出现了这么一个情况:我的服务地址是192.168.90.166,他的服务地址是192.1...

2017/06/23 13:55
3
回答
dubbox+thrift ClassCastException

我使用的是dubbox 2.8.4+thrift,在某些情况下会报类型转换异常,报这个异常之后只能重启才能正常,在某些情况后又会抛异常,以下是异常堆栈。 ...

2017/06/08 14:51
1
回答
dubbox rest 启动tomcat报错问题

dubbox rest 使用外部tomcat启动,启动报错!!!请大神们看看! 开发环境:dubbox2.8.4,jdk1.8,tomcat7,sprin...

2016/11/10 12:56
5
回答
Dubbox 2.8.4版本,使用FST或者Kryo序列化,当服务的方法参数含有Java原生数据类型时(比如int,long等),就会出错

Dubbox 2.8.4版本,使用FST或者Kryo序列化,当服务的方法参数含有Java原生数据类型时(比如int,long等),就会出错。需要换成Int...

2015/06/11 15:11

没有更多内容

加载失败,请刷新页面

dubbox-2.8.4部署运行

一、下载源码: dubbox2.8.4的源码下载地址:进入https://github.com/dangdangdotcom/dubbox,点击Download Zip即可下载源码,下载下来为dubbox-master压缩文件,解压为dubbox-master文件夹。...

2016/12/14 16:17
27
0
dubbox2.8.4编译发布到私服(nexus)

Maven介绍: Maven的具体介绍及安装说明可以参考: http://wentao365.iteye.com/blog/903396 http://jingyan.baidu.com/article/295430f136e8e00c7e0050b9.html Nexus介绍: Nexus的具体介绍...

2015/04/29 13:25
12.6K
3
dubbox粗记

一直在用dubbo2.5。今天花了一天时间研究了当当网的dubbox项目并在本地运行,粗略记录一下认识。

2016/07/18 17:34
1K
0
SpringBoot之Dubbox

上次springboot集成dubbo写过一个简单的demo调用的方式,由于spring版本的问题,这次使用duboox,完全基于注解的方式。 dubbox 地址:https://github.com/dangdangdotcom/dubbox 由于dubbox没...

2016/04/24 14:45
9.1K
2
分布式服务-DUBBOX(一):编译打包

1、概述 dubbo-阿里巴巴开源的分布式服务框架,现已停止维护。 dubbox-当当根据自身需求,在dubbo新增一些新功能,将其名为dubbox(Dubbo eXtensions)。 2、编译、打包并上传到私库(dubbo-2....

2016/11/28 15:23
972
0
Dubbox-2.8.4安装到本地仓库

1、先去github下载当当网维护的dubbox-2.8.4 https://github.com/dangdangdotcom/dubbox/tree/dubbox-2.8.4 2、解压dubbox-2.8.4.zip压缩包 3、用maven编译工程 进入到解压后的根目录,使用m...

07/29 01:41
398
0
dubbox 2.8.4 服务端消费端配置示例

关于dubbox的核心原理和细节会另开一篇文章来介绍,这篇文章主要是从配置和应用层面来介绍dubbox 2.8.4的使用。 zookeeper的安装 1、准备工作 -下载zookeeper 官方地址:http://apache.fayea...

2016/06/08 17:19
1K
0
Dubbox文档链接

Dubbox,Dubbox文档

2015/08/27 14:57
300
0
dubbox

https://www.cnblogs.com/yjmyzz/p/dubbox-demo.html https://github.com/dangdangdotcom/dubbox https://blog.csdn.net/liubenlong007/article/details/54692241......

05/23 01:50
40
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部