Dubbox的介绍和简单示例

原创 2016年08月30日 09:42:59

Dubbo架构

  • Provider: 暴露服务的服务提供方。
  • Consumer: 调用远程服务的服务消费方。
  • Registry: 服务注册与发现的注册中心。
  • Monitor: 统计服务的调用次调和调用时间的监控中心。
  • Container: 服务运行容器。

为什么使用Dubbox而不是Dubbo下载

Dubbo是阿里开源的RPC服务调用框架,已经3年没有维护了,而当当网开源的Dubbox在保证Dubbo原有功能的基础上做了一系列优化。

使用Dubbox的好处下载

  • 支持REST风格远程调用(HTTP + JSON/XML):基于非常成熟的JBoss框架,在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高效序列化实现:基于当今比较知名的高性能序列化库,为Dubbo默认的RPC协议添加新的序列化实现,并优化调整了其序列化体系,比较显著的提高了Dubbo RPC的性能。
  • 支持基于Jackson的JSON序列化:基于业界应用最广泛的序列化库,为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配置等等。

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

DubboxDemo项目的安装下载

  • Git Clone https://github.com/dangdangdotcom/dubbox
  • Checkout出来的Dubbox通过Maven编译并安装到本地仓库。
  • Zookeeper安装,作为dubbox的注册中心
  • 修改配置文件地址<dubbo:registry protocol="zookeeper" address="zookeeper://xxxxxxxxx">。
  • 直接运行ProviderTest类启动服务发布者。
  • 直接运行ConsumerTest类启动服务消费者。
补充:下载
  • 如果dubbo protocol配置为rest的,可以直接通过浏览器访问下载
  • 服务提供者最终打成jar时建议将启动类设置为com.alibaba.dubbo.container.Main,具体可见Provider的pom.xml

Dubbox支持的远程调用协议下载

  • dubbo:采用单一长连接和NIO异步通讯,基于TCP协议,默认基于netty框架进行传输,Hessian二进制序列化。
  • RMI:短连接同步传输,基于TCP协议,Java标准二进制序列化。
  • Hessian:短连接同步传输,基于HTTP协议,缺省内嵌Jetty作为服务器实现,Hessian二进制序列化。
  • http:短连接同步传输,基于HTTP协议,采用Spring的HttpInvoker实现,表单序列化。
  • webservice:短连接同步传输,基于HTTP协议,基于CXF实现,SOAP文本序列化。
  • thrift:thrift rpc框架。
  • memcached:采用KV存储的方式传输数据。
  • redis:采用KV存储的方式传输数据。
  • rest:dubbox提供,HTTP + JSON/XML,可内嵌tomcat实现http remoting体系。

Dubbox支持的序列化方式比较下载

 

推荐协议配置下载

<dubbo:protocol name="dubbo" serialization="kryo"  port="20990"  />
<dubbo:protocol name="rest" port="8080"  server="tomcat" />

分布式服务框架 dubbo/dubbox 入门示例

http://www.cnblogs.com/yjmyzz/p/dubbox-demo.html dubbo是一个分布式的服务架构,可直接用于生产环境作为SOA服务框架。 官网首页:htt...
  • zeng_84_long
  • zeng_84_long
  • 2015年09月17日 16:29
  • 21920

Dubbox 和Dubbo 为何选择

1. 前言 随着现在互联网行业的发展,越来越多的框架、中间件、容器等开源技术不断地涌现,更好地来服务于业务,解决实现业务的问题。然而面对众多的技术选择,我们要如何甄别出适合自己团队业务的技术呢?...
  • qq_38765404
  • qq_38765404
  • 2017年11月23日 15:48
  • 615

mysql简单存储过程范例

范例: BEGIN -- 定义参数 declare carId int(10); declare v_count int; declare done int default 1; -...
  • u010235716
  • u010235716
  • 2016年05月30日 11:50
  • 527

聊聊Dubbox(一):为何选择

原文:http://www.jianshu.com/p/0b6e2c920014 1. 前言 随着现在互联网行业的发展,越来越多的框架、中间件、容器等开源技术不断地涌现,更好地来服务于业务,解决实现...
  • I_will_try
  • I_will_try
  • 2017年07月27日 17:40
  • 6247

dubbo/dubbox 和SpringMVC 使用

随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。 单一应用架构 ...
  • walle167
  • walle167
  • 2017年06月21日 16:28
  • 2163

分布式框架-Dubbox介绍

 分布式框架-Dubbox介绍 博客分类: dubbo SOA 1. Dubbo是什么? Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远...
  • java_2017_csdn
  • java_2017_csdn
  • 2017年10月18日 09:44
  • 367

一个简单的Dubbo和SpringMVC的demo

一个简单的demo。 1.Dubbo简介 Provider是暴露服务的服务提供方 Consumer是调用远程服务的服务消费方 Registry:服务注册与发现的注册中心 流程:Provider在Reg...
  • u011499992
  • u011499992
  • 2016年01月25日 23:17
  • 3664

dubbo、dubbox坑集合

1、加载顺序        http://blog.csdn.net/snowcity1231/article/details/51240091 出现空指针的原因是:spring mvc扫描的...
  • zjilvufe
  • zjilvufe
  • 2017年01月17日 08:34
  • 2265

Java简单介绍

Java的三个版本:        Java SE:标准版,各应用平台的基础        Java EE:企业版,以企业为环境而开发应用程序的解决方案        Java ME:微型版,致力于消...
  • elibrace
  • elibrace
  • 2016年01月27日 08:42
  • 2179

最简单的Vuex示例

最简单的Vuex示例学习Vuex,弄个最简单的例子备忘一下,mapGetters, mapActions, mapMutations, state都用到了。1.老规矩,vue-cli脚手架来一下vue...
  • tanmx219
  • tanmx219
  • 2017年11月20日 11:01
  • 207
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Dubbox的介绍和简单示例
举报原因:
原因补充:

(最多只允许输入30个字)