博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
dubbo搭建例子
阅读量:5970 次
发布时间:2019-06-19

本文共 2065 字,大约阅读时间需要 6 分钟。

现在很多公司用到dubbo,使用起来是很快就学会了。真的要熟悉它还是要花点功夫的。

前面尝试看了些它的源码,这里为了调试源码,先打搭一个能跑的项目,顺别分享出来,以便刚像学习的朋友节约时间,毕竟时间至关重要。

dubbo说白了,就是个远程调用的解决方案。首先我觉得应该清晰的知道,玩这个dubbo,只需要起一个提供方,调用方,然后一个zk即可。其他杂七杂八的不要去管。翻阅了一些其他博客,都比较杂乱,把事情弄复杂了。这也是写下来的原因。dubbo文档:
以下内容非常简单,除了dubbo的知识还涉及的内容有:
maven,zookeeper,spring
 
我们应该先准备好zookeeper,到官网下一个在本地启动起来,在conf文件里复制zoo_sample.cfg 出zoo.cfg,修改一下端口。
启动命令:
sh zkServer.sh start
进入命令模式:
sh zkCli.sh -server 127.0.0.1:2181
进入后可以通过ls / 命令查看节点情况。
下面是当我启动好customer后,我在zk上看到的效果:
 
 
注意:这里不推荐搞界面查zk的东西,浪费时间而且无用。直接到官网上看zk的命令,顺别也可以学习下zk的一些基础知识。
 
项目讲解:
把dubbo引进来,一般在实际开发中都是自己在dubbo源码的基础上改造后成为可用的一个组件,提供给上层开发者。比如dubbox。
com.alibaba
dubbo
2.5.3
spring
org.springframework

 

这是一个老妈叫儿子出去买吃的的故事。
建一个接口:
public interface BuyFoodService {    String doBuy();}

 

 作为提供方应该实现它:
public class BuyFoodServiceimpl implements BuyFoodService {    public String doBuy() {        System.out.println("mon whant me to buy food");        return "ok";    }}

提供方的配置:

 

以上提供方就可以启动将自己的信息注册到zk上了。在zk上可以看到一个叫dubbo的节点,节点里面有个buyFoodService。

调用方的配置类似:
 
调用代码,妈妈发起让儿子去买食物的请求:
 
public class Customer {    public static void main(String[] args) {        ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(                "classpath*:spring/provider/applicationContext.xml");        BuyFoodService buyFoodService = (BuyFoodService) context.getBean("buyFoodService");        System.out.println(buyFoodService.doBuy());    }}
过程中遇到
报错:
java.lang.NoClassDefFoundError: org/I0Itec/zkclient/exception/ZkNoNodeException
解决办法,需要依赖:
com.101tec
zkclient
0.10

 

最后,当然把调好的项目共享出来:  然后开启你的dubbo之旅吧!

 

 

 

转载地址:http://cvwox.baihongyu.com/

你可能感兴趣的文章
Windows 7 Natvie VHD
查看>>
Python JS Jquery Json 转换关系
查看>>
重启jboss出现问题:端口被占用
查看>>
SpringMVC下的基本配置
查看>>
RedHat/CentOS系统信息查看命令大全
查看>>
Apache用户认证、域名跳转、Apache访问日志
查看>>
程序注释应该注意的地方
查看>>
tomcat+SSH中遇到中文乱码的解决方法
查看>>
用IKVMC将jar转成dll供c#调用
查看>>
Exchange Server 2013 DAG高可用部署(三)-服务器角色安装
查看>>
VMware 全虚拟打开
查看>>
windows 下搭建python虚拟环境
查看>>
[八省联考2018]劈配
查看>>
java中的枚举类
查看>>
IE Web 开发支持将迁移到 StackOverflow
查看>>
SQLite教程
查看>>
阳光十六法则
查看>>
Python2.7+selenium2自动化测试环境搭建
查看>>
Vim 7.4
查看>>
【C++】C++0x :: Introduction to some amazing features
查看>>