您的位置:首页 > 其它

Step by Step 配置dubbo服务

2014-09-02 09:08 87 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/recearth/article/details/39001227
  1. 概述
    Dubbo是一个开源的分布式服务框架,主要用于提供一个RPC远程调用方案,它的核心功能包括:
    Remoting:远程通信基础,提供对多种NIO框架抽象封装,包括同步转异步和请求-响应模式的信息交换方式
    Cluster:服务框架核心,提供基于接口方法的远程过程调用,包括多协议支持,并提供软负载均衡和容错机制的集群支持
    Registry:服务注册中心,使服务消费方能动态地查找服务提供方,使地址透明,使服务提供方可以平滑增加或减少机器

  2. 使用dubbo的简单例子
    包括如何下载dubbo源代码,如何编译,如何写配置文件,如何起dubbo注册和监控中心

本文选取的例子来自于https://github.com/alibaba/dubbo

(1) 如何下载dubbo源代码
我的工作台用的是cygwin,是一个在windows平台上运行的类UNIX模拟环境,安装了git命令

[WangKun@Alibaba codes] $ git clone https://github.com/alibaba/dubbo.git dubboDemo
正克隆到 'dubboDemo'...
remote: Counting objects: 43455, done.
remote: Compressing objects: 100% (215/215), done.
remote: Total 43455 (delta 56), reused 156 (delta 16)
接收对象中: 100% (43455/43455), 9.16 MiB | 693.00 KiB/s, 完成.
处理 delta 中: 100% (12177/12177), 完成.
检查连接... 完成。
正在检出文件: 100% (1692/1692), 完成.

[WangKun@Alibaba codes] $ cd dubboDemo/

[WangKun@Alibaba dubboDemo] $ git checkout master
已经位于 'master'
您的分支与上游分支 'origin/master' 一致。

(2) 编译安装包
[WangKun@Alibaba dubboDemo] $ mvn clean install -Dmaven.test.skip
编译成功后
[WangKun@Alibaba dubboDemo] $ cd dubbo-simple/dubbo-registry-simple/target/ 
[WangKun@Alibaba target] $ tar zxvf dubbo-registry-simple-2.5.4-SNAPSHOT-assembly.tar.gz
[WangKun@Alibaba target] $ cd dubbo-registry-simple-2.5.4-SNAPSHOT/bin/
[WangKun@Alibaba bin] $ ll
总用量 18K
-rwxr-xr-x 1 quentin.wk Domain Users 2.1K 九月 1 17:40 dump.sh*
-rwxr-xr-x 1 quentin.wk Domain Users 49 九月 1 17:40 restart.sh*
-rwxr-xr-x 1 quentin.wk Domain Users 413 九月 1 17:40 server.sh*
-rwxr-xr-x 1 quentin.wk Domain Users 815 九月 1 17:40 start.bat*
-rwxr-xr-x 1 quentin.wk Domain Users 2.9K 九月 1 17:40 start.sh*
-rwxr-xr-x 1 quentin.wk Domain Users 836 九月 1 17:40 stop.sh*

在windows下运行start.bat即可将dubbo注册中心服务起来

同上,

[WangKun@Alibaba dubboDemo] $ tar zxvf dubbo-simple/dubbo-monitor-simple/target/dubbo-monitor-simple-2.5.4-SNAPSHOT-assembly.tar.gz

[WangKun@Alibaba dubboDemo] $ tar zxvf dubbo-demo/dubbo-demo-provider/target/dubbo-demo-provider-2.5.4-SNAPSHOT-assembly.tar.gz

[WangKun@Alibaba dubboDemo] $ tar zxvf dubbo-demo/dubbo-demo-consumer/target/dubbo-demo-consumer-2.5.4-SNAPSHOT-assembly.tar.gz

在解开的文件夹下的bin目录下运行start.bat,即可将consumer,provider,monitor都起来

运行provider

在monitor的bin目录下运行start.bat http://127.0.0.1/8080

进入http://127.0.0.1/8080即可进入monitor的监控页面

运行consumer

运行registry-simple

  1. dubbo的配置文件解析

dubbo-demo-consumer.xml
dubbo:reference id="demoService" interface="com.alibaba.dubbo.demo.DemoService"

dubbo-demo-provider.xml
bean id="demoService" class="com.alibaba.dubbo.demo.provider.DemoServiceImpl" 
dubbo:service interface="com.alibaba.dubbo.demo.DemoService" ref="demoService"

dubbo-registry-simple.xml
bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"

dubbo:application name="${dubbo.application.name}" owner="${dubbo.application.owner}" 
dubbo:protocol name="dubbo" port="${dubbo.protocol.port}" heartbeat="180000" 
dubbo:service id="registryServiceConfig" interface="com.alibaba.dubbo.registry.RegistryService" ref="registryService" registry="N/A" ondisconnect="disconnect" callbacks="1000"
dubbo:method name="subscribe">
dubbo:method name="unsubscribe">

bean id="registryService" class="com.alibaba.dubbo.registry.simple.SimpleRegistryService"

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: