TypechoJoeTheme

FareCloud专注技术填坑

统计

会编程的羽流云

网站页面

Dubbox框架使用手册

2021-01-02
/
0 评论
/
1,218 阅读
/
正在检测是否收录...
01/02

Dubbox框架使用手册

1、概述

1.1、dubbox简介

dubbox是dubbo的扩展,主要在dubbo的基础上进行了一下的改进:
1) 支持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倍左右的差距,详见文档中的基准测试报告。
2) 支持基于Kryo和FST的Java高效序列化实现:基于当今比较知名的Kryo和FST高性能序列化库,为Dubbo默认的RPC协议添加新的序列化实现,并优化调整了其序列化体系,比较显著的提高了Dubbo RPC的性能,详见文档中的基准测试报告。
3) 支持基于Jackson的JSON序列化:基于业界应用最广泛的Jackson序列化库,为Dubbo默认的RPC协议添加新的JSON序列化实现。
4) 支持基于嵌入式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体系)。
5) 升级Spring:将dubbo中Spring由2.x升级到目前最常用的3.x版本,减少版本冲突带来的麻烦。
6) 升级ZooKeeper客户端:将dubbo中的zookeeper客户端升级到最新的版本,以修正老版本中包含的bug。
7) 支持完全基于Java代码的Dubbo配置:基于Spring的Java Config,实现完全无XML的纯Java代码方式来配置dubbo
8) 调整Demo应用:暂时将dubbo的demo应用调整并改写以主要演示REST功能、Dubbo协议的新序列化方式、基于Java代码的Spring配置等等。
9) 修正了dubbo的bug 包括配置、序列化、管理界面等等的bug。

1.2、Dubbox应用场景:

借用Java过去最流行的宣传语,为dubbo添加REST调用后,可以实现服务的”一次编写,到处访问“,理论上可以面向全世界开放,从而真正实现比较理想化的面向服务架构(SOA)。
当然,传统的WebServices(WSDL/SOAP)也基本同样能满足以上场景(除了场景4)的要求(甚至还能满足那些需要企业级特性的场景),但由于其复杂性等问题,现在已经越来越少被实际采用了。

2、环境与版本说明

2.1、在虚拟机中安装Centos7(安装参见
2.2、Zookeeper版本3.4.14
2.3、Dubbo版本2.8.4

3、配置Dubbox模板的Demo项目

3.1、 下载Dubbo源代码 下载地址
3.2、 将源代码解压导入到eclipse中
3.3、 修改dubbo-demo模块下的dubbo-demo-provider/src/main/resources/META-INF/
spring/dubbo-demo-provider.xml文件

3.4.、修改dubbo-demo模块下的dubbo-demo-consuer/src/main/resources/META-INF/
spring/dubbo-demo-provider.xml文件
3.5、首先运行dubbo-demo-provider下的Demo Provider.java,运行成功后运行dubbo-demo-consumer下的DemoConsumer.java以及RestClient观察运行结果,成功后再次运行dubbo-demo-consumer下的RestClient.java,观察运行就结果,如果出现如下结构说明已经配置成功。

4.、手动构建简单的Dubbox项目

4.1、 在eclipse上创建一个maven工程
4.2、 修改pom文件的packing为pom形式
4.3、 在pom文件中创建modules
4.4、 修改pom文件
点击dubbo-provider下的pom文件的dependencies选项,在其中添加dependency,并删除pom文件中的packaging标签(如果项目还是报错右键当前项目选择java ee tools中的Generate Deployment Descriptor stub选项)

修改其pom文件,修改后的pom文件如下

4.5、 在dubbox-api项目中新建一个接口

4.6、 在dubbox-provider项目中新建一个接口实现类、项目启动以及配置文件



4.7、 运行provider
4.8、 在浏览器中访问http://localhost:8080/demo/hello观察结果

4.9、 注意事项
1) 实现rest时,配置文件中的协议必须添加rest协议,协议所使用的服务器可以为tomcat也可以使用netty等。
2) 配置rest协议时的端口号必须与服务器相同。
3) Provider中使用的注解path是接口的访问地址
4) Provider中可以通过get与post注解来控制该接口被访问的方式
5) 当时用@Consumes({MediaType.APPLICATION_JSON})注解时是指定了接口接收JSON格式的数据。REST框架会自动将JSON数据反序列化为对象

参考链接
https://blog.csdn.net/nmyphp/article/details/79174225
https://blog.csdn.net/airenone/article/details/61923198
Javadubbospringboot
朗读
赞(1)
版权属于:

FareCloud专注技术填坑

本文链接:

https://www.zachariah.cn/archives/16.html(转载时请注明本文出处及文章链接)

评论 (0)

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月

最新回复

  1. 李林超
    2021-07-21
  2. Leefs
    2021-07-17
  3. Leefs
    2021-06-28
  4. 马某人
    2021-01-09

    {!{data:image/png;base64,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}!}

  5. 吴萌
    2021-01-08

标签云