微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Dubbox Dubbo 扩展

程序名称:Dubbox

授权协议: Apache

操作系统: 跨平台

开发语言: Java

Dubbox 介绍

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贡献更多的改进。

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

Dubbox 官网

https://github.com/dangdangdotcom/dubbox

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐