dubbo

读音 |ˈdʌbəʊ| !不是[dubəʊ]!

环境:

centos6.9+jdk1.8_172+zookeeper3.4.6+dubbo2.6.2

官网

http://dubbo.apache.org/

参考手册

http://dubbo.apache.org/books/dubbo-user-book/

架构(图片来源于官网)

0 provider和container启动

1 provider和container启动后注册到注册中心

2 consumer订阅注册中心

3 如果有合适的服务,注册中心通知consumer,返回地址列表

4 consumer获得通知后调用相应服务

5 monitor 监控container,provider和consumer

更详细的架构说明参考官方手册

http://dubbo.apache.org/books/dubbo-user-book/preface/architecture.html

使用前提:

jdk1.6或者以上

maven3或者以上

maven依赖:

1 <dependency>
2     <groupId>com.alibaba</groupId>
3     <artifactId>dubbo</artifactId>
4     <version>${dubbo.version}</version> #当前是2.6.2
5 </dependency>

管理控制台安装 (参考:https://github.com/apache/incubator-dubbo-ops)

step 1、git clone https://github.com/dubbo/dubbo-ops.git /var/tmp/dubbo-ops

step 2、mvn clean package

说明:

1)dubbo admin 是一个spring boot工程,直接下命令 java -jar xxx.jar 运行。注意需要观察tomcat 的端口号,该工程是7001,必须在centos开放防火墙端口号。

首先启动zookeeper!

访问地址:http://ip:7001

2)dubbo monitor dubbo registry

解压dubbo-ops\dubbo-monitor-simple\target目录中的dubbo-monitor-simple-2.0.0-assembly.tar.gz 和dubbo-ops\dubbo-registry-simple\target目录中的dubbo-registry-simple-2.0.0-assembly.tar.gz

运行脚本程序

3)monitor和 registry好像不好使。。。。一直在starting...................??????

4)不建议参考官方手册安装控制台:

http://dubbo.apache.org/books/dubbo-admin-book/install/admin-console.html

官方参考手册是用tomcat,但是git到的代码却是spring boot 2.0.2的,已经内置了tomcat。。。不知道为什么还建议使用tomcat!?而且手册的war包版本写的是2.0.0,但是mvn clean package出来的却是jar包,版本号是0.0.1。dubbo在孵化中,那么手册是不是n年不更新了。。。

5)几点指出

实验:

dubbo-demo

环境:

centos6.8,dubbo2.6.2,zookeeper3.4.6,jdk1.8_172,chrome

工程结构:

dubbo-demo的pom.xml

 1 <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 2     xmlns="http://maven.apache.org/POM/4.0.0"
 3     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 4     <modelVersion>4.0.0</modelVersion>
 5
 6     <groupId>com.alibaba</groupId>
 7     <artifactId>dubbo-demo</artifactId>
 8     <version>2.6.2-SNAPSHOT</version>
 9     <packaging>pom</packaging>
10     <name>dubbo1</name>
11
12     <modules>
13         <module>dubbo-demo-api</module>
14         <module>dubbo-demo-provider</module>
15         <module>dubbo-demo-consumer</module>
16     </modules>
17
18     <properties>
19         <java.version>1.8</java.version>
20     </properties>
21
22     <dependencies>
23         <dependency>
24             <groupId>com.alibaba</groupId>
25             <artifactId>dubbo</artifactId>
26             <version>2.6.2</version>
27         </dependency>
28
29         <dependency>
30             <groupId>org.apache.curator</groupId>
31             <artifactId>curator-recipes</artifactId>
32             <version>2.5.0</version>
33         </dependency>
34
35         <dependency>
36             <groupId>org.springframework</groupId>
37             <artifactId>spring-core</artifactId>
38             <version>4.3.18.RELEASE</version>
39         </dependency>
40
41         <dependency>
42             <groupId>org.springframework</groupId>
43             <artifactId>spring-context</artifactId>
44             <version>4.3.18.RELEASE</version>
45         </dependency>
46
47         <dependency>
48             <groupId>log4j</groupId>
49             <artifactId>log4j</artifactId>
50             <version>1.2.17</version>
51         </dependency>
52     </dependencies>
53 </project>

依赖包:

dubbo-demo-consumer的dubbo-demo-provider.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 3        xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
 4        xmlns="http://www.springframework.org/schema/beans"
 5        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
 6        http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
 7
 8     <!-- provider's application name, used for tracing dependency relationship -->
 9     <dubbo:application name="demo-provider"/>
10
11     <!-- use multicast registry center to export service -->
12     <dubbo:registry protocol="zookeeper" address="192.168.0.106:2181"/>
13
14     <!-- use dubbo protocol to export service on port 20880 注:在虚拟机centos6.8开放端口-->
15     <dubbo:protocol name="dubbo" port="20880"/>
16
17     <!-- service implementation, as same as regular local bean -->
18     <bean id="demoService" class="com.alibaba.dubbo.demo.provider.DemoServiceImpl"/>
19
20     <!-- declare the service interface to be exported -->
21     <dubbo:service interface="com.alibaba.dubbo.demo.DemoService" ref="demoService" timeout="1200000"/>
22
23 </beans>

dubbo-demo-provider的dubbo-demo-consumer.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 3        xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"
 4        xmlns="http://www.springframework.org/schema/beans"
 5        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
 6        http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd">
 7
 8     <!-- consumer's application name, used for tracing dependency relationship (not a matching criterion),
 9     don't set it same as provider -->
10     <dubbo:application name="demo-consumer"/>
11
12     <!-- use multicast registry center to discover service -->
13     <dubbo:registry protocol="zookeeper" address="192.168.0.106:2181"/>
14
15     <!-- generate proxy for the remote service, then demoService can be used in the same way as the
16     local regular interface -->
17     <dubbo:reference id="demoService" check="false" interface="com.alibaba.dubbo.demo.DemoService"/>
18
19 </beans>

开放端口2181,20880,7001

启动zookeeper

启动dubbo-admin(spring boot工程)

启动Chrome,访问:http://192.168.0.106:7001

启动eclipse

先运行Provider

再运行Consumer

查看“服务治理”》“服务”》“提供者”

查看“服务治理”》“服务”》“消费者”

 2018-08-07 22:50:39

1、较新版本的zookeeper内置了jetty,端口是8080,当dubbo的admin部署在tomcat时需要把端口改为非8080,比如8081.

2、dubbo,zookeeper,spring整合测试时,启动顺序需要注意下,先zookeeper,再dubbo的provider,再consumer1,consumer2,...

如果需要利用dubbo的admin监控时,可部署在tomcat的webapps目录下,注意改端口

3、rpcException可能不是代码上的问题,重新启动consumer可以解决

转载于:https://www.cnblogs.com/mrray1105/p/9233548.html

dubbo ---- 入门相关推荐

  1. dubbo入门--Hello World

    Dubbo入门--Hello World 转载自:http://blog.csdn.net/hanmov/article/details/66973957?locationNum=2&fps= ...

  2. Dubbo入门Demo

    2019独角兽企业重金招聘Python工程师标准>>> 1.Dubbo简单介绍 Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方 ...

  3. dubbo入门学习笔记之入门demo(基于普通maven项目)

    注:本笔记接dubbo入门学习笔记之环境准备继续记录; (四)开发服务提供者和消费者并让他们在启动时分别向注册中心注册和订阅服务 需求:订单服务中初始化订单功能需要调用用户服务的获取用户信息的接口(订 ...

  4. Dubbo入门(2) - 简单实践

    作者:不洗碗工作室 - Marklux 出处:Dubbo入门(2) - 简单实践 版权归作者所有,转载请注明出处 在了解什么是分布式框架之后,我们需要上手实践一下,来了解整个系统是如何运作起来的. 本 ...

  5. Dubbo入门介绍---搭建一个最简单的Demo框架

    Dubbo入门---搭建一个最简单的Demo框架 置顶 2017年04月17日 19:10:44 是Guava不是瓜娃 阅读数:320947 标签: dubbo zookeeper 更多 个人分类: ...

  6. 基于Springboot2.0的Dubbo入门项目(dubbo-spring-boot-starter)

    Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成.最近半年来,Dubbo的得到了快速的维护,官方也推出了 ...

  7. Dubbo入门之hello world(zookeeper做注册中心)

    说明:注册中心可以用多种,项目中一般都用zookeeper 注册中心方式 demo1用的multicast广播注册中心方式 会了multicast广播注册中心方式,zookeeper就很简单了 dem ...

  8. Dubbo入门----搭建一个最简单的Demo框架

    Dubbo背景和简介 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起. 单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本. ...

  9. Dubbo入门---搭建一个最简单的Demo框架

    Dubbo背景和简介 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起. 单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本. ...

  10. Dubbo入门(一)

    目录 一.Dubbo核心概念 1.简介 2.基本概念 3.Dubbo环境搭建(windows) (1)安装zookeeper (2)安装dubbo-admin管理控制台 二.快速入门 gmail-in ...

最新文章

  1. 二分搜索 POJ 2456 Aggressive cows
  2. 2019全球AI文创大赛正式启动,AI科技赋能新文创
  3. shiro 解决 跨域(仅端口不同) 登陆 问题
  4. hdu-1796 How many integers can you find---容斥定理
  5. 线性代数:第五章 相似矩阵及二次型(1)向量的内积 方阵的特征值与特征向量 相似矩阵
  6. c# 水晶报表中处理TextObject
  7. live555的安装 RTSP点播消息流程实例(客户端:VLC, RTSP服务器:LIVE555 Media Server)
  8. jpypePython对象转JAVA_通过JPype和numpy将Java类型转换为Python
  9. GARFIELD@04-13-2005
  10. 渗透测试——XP工具练习
  11. 【剑指offer】31、栈的压入和弹出序列
  12. zul组件、zhtml组件、native组件的区别
  13. linux系统上查询ip地址归属
  14. 18年6月英语六级第一套听力单词
  15. 如何使用(稿定)设计软件无水印
  16. 2021年高压电工模拟考试题库及高压电工模拟考试系统
  17. Fixed Gear DIY整车配色 JavaScript版制作过程
  18. 乐视生态世界发布会官方图文直播(2016年01月12日 15:00)
  19. QQ网页登陆密码加密方式农场、空间、WebQQ等通用
  20. ios APP性能检测

热门文章

  1. 学会Web前端,高薪工作任你挑!
  2. 【C语言】三子棋游戏
  3. 数据结构时间复杂度T(n)=O(f(n))的含义
  4. java des加密解密_Java实现的DES加密解密工具类实例
  5. linux启动写入了mbr,一、Linux系统启动(MBR)
  6. c语言编程新思路知道答案,C语言编程新思路_知道答案公众号免费
  7. linux 下wn725无线网卡驱动,TL-WN725N V3无线网卡驱动移植与wireless工具wpa_supplicant-2.6...
  8. 交换机 链路层无法udp通讯_一文读懂计算机底层网络原理,包括TCP、UDP、header,什么是包、帧、段等关键问题...
  9. 学习了Redis的五大数据类型,其底层实现你了解吗?
  10. Java中Date日期以及日期格式化