Dubbox now means Dubbo eXtensions. If you know java, javax and dubbo, you know what dubbox is :)
Dubbox adds features like RESTful remoting, Kyro/FST serialization, etc to the popular [dubbo service framework](http://github.com/alibaba/dubbo). It's been used by several projects of [dangdang.com](http://www.dangdang.com), which is one of the major e-commerce companies in China.
## 主要贡献者
* 沈理 [当当网](http://www.dangdang.com/) shenli@dangdang.com
* 王宇轩 [当当网](http://www.dangdang.com/) wangyuxuan@dangdang.com
* 马金凯 [韩都衣舍](http://www.handu.com/) majinkai@handu.com
* Dylan 独立开发者 dinguangx@163.com
* Kangfoo 独立开发者
有技术问题请移步此处讨论 https://github.com/dangdangdotcom/dubbox/issues
## Dubbox当前的主要功能
* **支持REST风格远程调用(HTTP + JSON/XML)**:基于非常成熟的JBoss [RestEasy](http://resteasy.jboss.org/)框架,在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高效序列化实现**:基于当今比较知名的[Kryo](https://github.com/EsotericSoftware/kryo)和[FST](https://github.com/RuedigerMoeller/fast-serialization)高性能序列化库,为Dubbo默认的RPC协议添加新的序列化实现,并优化调整了其序列化体系,比较显著的提高了Dubbo RPC的性能,详见文档中的基准测试报告。
* **支持基于Jackson的JSON序列化**:基于业界应用最广泛的[Jackson](http://jackson.codehaus.org/)序列化库,为Dubbo默认的RPC协议添加新的JSON序列化实现。
* **支持基于嵌入式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。
* **支持完全基于Java代码的Dubbo配置**:基于Spring的Java Config,实现完全无XML的纯Java代码方式来配置dubbo
* **调整Demo应用**:暂时将dubbo的demo应用调整并改写以主要演示REST功能、Dubbo协议的新序列化方式、基于Java代码的Spring配置等等。
* **修正了dubbo的bug** 包括配置、序列化、管理界面等等的bug。
**注:dubbox和dubbo 2.x是兼容的,没有改变dubbo的任何已有的功能和配置方式(除了升级了spring之类的版本)**
## 文档资料
[在Dubbo中开发REST风格的远程调用(RESTful Remoting)](http://dangdangdotcom.github.io/dubbox/rest.html)
[在Dubbo中使用高效的Java序列化(Kryo和FST)](http://dangdangdotcom.github.io/dubbox/serialization.html)
[使用JavaConfig方式配置dubbox](http://dangdangdotcom.github.io/dubbox/java-config.html)
[Dubbo Jackson序列化使用说明](http://dangdangdotcom.github.io/dubbox/jackson.html)
[Demo应用简单运行指南](http://dangdangdotcom.github.io/dubbox/demo.html)
[Dubbox@InfoQ](http://www.infoq.com/cn/news/2014/10/dubbox-open-source)
[Dubbox Wiki](https://github.com/dangdangdotcom/dubbox/wiki) (由社区志愿者自由编辑的)
## 版本
详见:https://github.com/dangdangdotcom/dubbox/releases
* **dubbox-2.8.0**:主要支持REST风格远程调用、支持Kryo和FST序列化、升级了Spring和Zookeeper客户端、调整了demo应用等等
* **dubbox-2.8.1**:主要支持基于嵌入式tomcat的http-remoting,优化了REST客户端性能,在REST中支持限制服务端接纳的最大HTTP连接数等等
* **dubbox-2.8.2**:
* 支持REST中的HTTP logging,包括HTTP header的字段和HTTP body中的消息体,方便调试、日志纪录等等
* 提供辅助类便于REST的中文处理
* 改变使用`@Reference` annotation配置时的异常处理方式,即当用annotation配置时,过去dubbo在启动期间不抛出依赖服务找不到的异常,而是在具体调用时抛出NPE,这与用XML配置时的行为不一致。
* 较大的充实了Dubbo REST的文档
* **dubbox-2.8.3**:
* 在REST中支持dubbo统一的方式用bean validation annotation作参数校验(沈理)
* 在RpcContext上支持获取底层协议的Request/Response(沈理)
* 支持采用Spring的Java Config方式配置dubbo(马金凯)
* 在Dubbo协议中支持基于Jackson的json序列化(Dylan)
* 在Spring AOP代理过的对象上支持dubbo annotation配置(Dylan)
* 修正Dubbo管理界面中没有consumer时出现空指针异常(马金凯)
* 修正@Reference annotation中protocol设置不起作用的bug(沈理)
* 修正@Reference annotation放在setter方法上即会出错的bug(Dylan)
## 依赖
从dubbox-2.8.4开始,所有依赖库的使用方式将和dubbo原来的一样:即如果要使用REST、Kyro、FST、Jackson等功能,需要用户自行手工添加相关的依赖。例如:
### REST风格远程调用
```xml
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>3.0.7.Final</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-client</artifactId>
<version>3.0.7.Final</version>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
</dependency>
<!-- 如果要使用json序列化 -->
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jackson-provider</artifactId>
<version>3.0.7.Final</version>
</dependency>
<!-- 如果要使用xml序列化 -->
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxb-provider</artifactId>
<version>3.0.7.Final</version>
</dependency>
<!-- 如果要使用netty server -->
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-netty</artifactId>
<version>3.0.7.Final</version>
</dependency>
<!-- 如果要使用Sun HTTP server -->
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jdk-http</artifactId>
<version>3.0.7.Final</version>
</dependency>
<!-- 如果要使用tomcat server -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
<version>8.0.11</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-logging-juli</artifactId>
<version>8.0.11</version>
</dependency>
```
### Kyro序列化
```xml
<dependency>
<groupId>com.esotericsoftware.kryo</groupId>
<artifactId>kryo</artifactId>
<version>2.24.0</version>
</dependency>
<dependency>
<groupId>de.javakaffee</groupId>
<artifactId>kryo-serializers</artifactId>
<version>0.26</version>
</dependency>
```
### FST序列化
```xml
<dependency>
<groupId>de.ruedigermoeller</groupId>
<artifactId>fst</artifactId>
<version>1.55</version>
</dependency>
```
### Jackson序列化
```xml
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.3.3</version>
</dependency>
<dependency>
没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
收起资源包目录
Dubbo源代码(2.8.4) (2000个子文件)
com.alibaba.dubbo.common.extensionloader.activate.ActivateExt1 331B
com.alibaba.dubbo.common.extensionloader.activate.ActivateExt1 72B
com.alibaba.dubbo.common.extensionloader.ext8_add.AddExt1 73B
setup.bat 2KB
start.bat 815B
run.bat 209B
run.bat 162B
run.bat 144B
com.alibaba.dubbo.cache.CacheFactory 197B
com.alibaba.dubbo.rpc.protocol.thrift.ClassNameGenerator 137B
com.alibaba.dubbo.rpc.cluster.Cluster 585B
com.alibaba.dubbo.remoting.Codec2 191B
com.alibaba.dubbo.remoting.Codec2 58B
com.alibaba.dubbo.remoting.Codec2 56B
com.alibaba.dubbo.common.extensionloader.compatible.CompatibleExt 157B
com.alibaba.dubbo.common.compiler.Compiler 197B
com.alibaba.dubbo.rpc.cluster.ConfiguratorFactory 172B
com.alibaba.dubbo.container.Container 69B
com.alibaba.dubbo.container.Container 60B
com.alibaba.dubbo.container.Container 59B
com.alibaba.dubbo.container.Container 57B
com.alibaba.dubbo.container.Container 54B
com.alibaba.dubbo.container.Container 54B
common.css 9KB
skin.css 4KB
dubbo.css 4KB
SpryValidationRadio.css 903B
com.alibaba.dubbo.common.store.DataStore 61B
Thumbs.db 118KB
com.alibaba.dubbo.remoting.Dispatcher 424B
com.alibaba.dubbo.remoting.exchange.Exchanger 73B
com.alibaba.dubbo.common.extensionloader.ext2.Ext2 202B
com.alibaba.dubbo.common.extensionloader.ext6_inject.Ext6 148B
com.alibaba.dubbo.common.extension.ExtensionFactory 144B
com.alibaba.dubbo.common.extension.ExtensionFactory 71B
SimpleDO.fc 19B
com.alibaba.dubbo.rpc.Filter 786B
com.alibaba.dubbo.rpc.Filter 126B
com.alibaba.dubbo.rpc.Filter 63B
com.alibaba.dubbo.rpc.Filter 56B
com.alibaba.dubbo.rpc.Filter 55B
com.alibaba.dubbo.rpc.Filter 48B
json.flex 2KB
404error.gif 2KB
dog.gif 2KB
bg04.gif 816B
co_04.gif 142B
co_02.gif 141B
co_03.gif 141B
co_01.gif 138B
tree-up.gif 104B
tree-down.gif 103B
tree-up-right.gif 101B
tree-down-left.gif 100B
tree-left-up.gif 98B
tree-right-down.gif 94B
tree-blank.gif 69B
bg03.gif 52B
bg01.gif 52B
bg02.gif 52B
spring.handlers 102B
com.alibaba.dubbo.common.extensionloader.adaptive.HasAdaptiveExt 174B
com.alibaba.dubbo.remoting.http.HttpBinder 190B
favicon.ico 1KB
dubbo-demo-provider.iml 13KB
dubbo-demo-consumer.iml 13KB
dubbo-admin.iml 11KB
dubbo-monitor-simple.iml 10KB
dubbo-test-benchmark-server.iml 10KB
dubbo-test-benchmark-client.iml 10KB
dubbo-test-examples.iml 10KB
dubbo-registry-simple.iml 6KB
dubbo-demo-api.iml 6KB
dubbo-test-integration.iml 6KB
dubbo-test-benchmark.iml 6KB
dubbo-test-compatibility.iml 6KB
dubbo.iml 6KB
dubbo-test-benchmark-api.iml 5KB
dubbo-rpc-rest.iml 5KB
dubbo-rpc-thrift.iml 5KB
dubbo-config-api.iml 4KB
dubbo-config-spring.iml 4KB
dubbo-rpc-webservice.iml 4KB
dubbo-common.iml 3KB
dubbo-rpc-http.iml 3KB
dubbo-registry-zookeeper.iml 3KB
dubbo-container-javaconfig.iml 3KB
dubbo-container-spring.iml 3KB
dubbo-rpc-hessian.iml 3KB
dubbo-registry-default.iml 3KB
dubbo-rpc-default.iml 3KB
dubbo-rpc-rmi.iml 3KB
dubbo-remoting-zookeeper.iml 3KB
dubbo-container-logback.iml 3KB
dubbo-monitor-default.iml 3KB
dubbo-remoting-grizzly.iml 2KB
dubbo-registry-redis.iml 2KB
dubbo-registry-api.iml 2KB
dubbo-container-log4j.iml 2KB
dubbo-container-jetty.iml 2KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
MichaelSongs
- 粉丝: 25
- 资源: 26
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论4