dubbo 实践笔记

来源:互联网 发布:人体透视镜软件下载 编辑:程序博客网 时间:2024/06/14 09:28

//by yan 20170412

亲测:
1、 在github下载整个源码:https://github.com/alibaba/dubbo
2、 import入eclipse
3、 install 整个 dubbo-parent  
4、 install所有成功后,可以对项目dubbo-demo-provider,执行mvn assembly:assembly
5、 rz 上传到虚拟机,解压。
root@ubuntu-master:/usr/local/src/dubbo# tar vxf dubbo-demo-provider-2.5.4-SNAPSHOT-assembly.tar.gz
root@ubuntu-master:/usr/local/src/dubbo/dubbo-demo-provider-2.5.4-SNAPSHOT# bin/start.sh
Starting the demo-provider .....OK!
PID: 7721
STDOUT: logs/stdout.log

注:bin/start.sh文件的有个地方是分配内存的,默认2g可能太大,可以改小它,如下:
...
JAVA_MEM_OPTS=""
BITS=`java -version 2>&1 | grep -i 64-bit`
if [ -n "$BITS" ]; then
  JAVA_MEM_OPTS=" -server-Xmx512m -Xms512m-Xmn256m -XX:PermSize=128m -Xss256k -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFast
AccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 "
else
  JAVA_MEM_OPTS=" -server -Xms1g -Xmx1g -XX:PermSize=128m -XX:SurvivorRatio=2 -XX:+UseParallelGC "
fi

...

6、 对项目dubbo-monitor-simple,执行mvn assembly:assembly 
7、 同5步骤,最后start成功后,可能访问界面:http://127.0.0.1:8080(虚拟机)  ,主机上可以访问:http://192.168.245.128:8080/index.html
8、 在主机上jetty:run    dubbo-admin项目。成功可以访问界面:http://127.0.0.1:8080(主机)
注:可能要修改下文件/WEB-INF/dubbo.properties :

dubbo.registry.address=zookeeper://192.168.245.128:2181   //这里为zookeeper的服务器地址(我是启动在虚拟面的)
dubbo.admin.root.password=root
dubbo.admin.guest.password=guest

注:zookeeper要启动,连接得上才能启动成功。

启动成功后,登录http://127.0.0.1:8080  root/root。这时没有看到提供者。

哪么提供者怎么注册到zookeeper,并且能被dubbo-admin监控到呢?
答案应该是这样:
在dubbo-demo-provider项目里修改dubbo-demo-provider.xml文件:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd">

<bean id="demoService" class="com.alibaba.dubbo.demo.provider.DemoServiceImpl" />

<!-- <dubbo:service interface="com.alibaba.dubbo.demo.DemoService" ref="demoService" /> -->

  <!-- 提供方应用名称信息,这个相当于起一个名字,我们dubbo管理页面比较清晰是哪个应用暴露出来的 -->
  <dubbo:application name="dubbo_provider"></dubbo:application>
  <!-- 使用zookeeper注册中心暴露服务地址 -->
  <dubbo:registry address="zookeeper://127.0.0.1:2181" check="false" subscribe="false" register=""></dubbo:registry>
  <!-- 要暴露的服务接口 -->
  <dubbo:service interface="com.alibaba.dubbo.demo.DemoService" ref="demoService" />

</beans>

重新assembly,上件到虚拟机上,并启动。


9、对项目dubbo-demo-consumer,执行mvn assembly:assembly ,上件到虚拟机上,并启动。
注:启动时,要先启动provider再启动consumer,否则comsumer报错启动失败。这时在dubbo-admin界面就看不到消息者。

0 0
原创粉丝点击