【转摘】
之前在网上学到用linux搭建,便想着用windows试试。经过一番折腾终于弄了出来。故写这篇文章也是做一个总结,理一理我遇到的一些问题。
因为我之前的工程是用maven搭建的,所以这是基于整合ssm框架的maven工程。
那么首先应该谈一谈为什么要使用dubbo:
随着互联网的发展,或许网站的规模会越来越大,常规的垂直应用架构已无法应对,那么这个时候仅仅靠一台服务器是不够的。所以需要进行分布式架构。
那么这里,就有了问题,当服务器多了之后,它们之间是如何进行通讯,也就是调用和访问呢?这就要用到webservice技术了。而当你的系统足够大时,就会有许许多多的服务在通信,这时候就需要一个治理系统来保证有条不紊的演进。Dubbo是阿里开源的分布式服务框架,可以对服务统一治理,监控等等。
这是dubbo的架构图
节点角色说明:
Zookeeper作为Dubbo服务的注册中心,Zookeeper是hadoop的一个子项目,其发展历程无需赘述。Dubbo原先基于数据库的注册中心,没采用Zookeeper,Zookeeper一个分布式的服务框架,是树型的目录服务的数据存储,能做到集群管理数据,这里能很好的作为Dubbo服务的注册中心,Dubbo能与Zookeeper做到集群部署。官方也是推荐使用zookeeper。
首先下载zookeeper,我这里的版本是3.4.6。解压后进入zookeeper的conf
文件夹修改zoo-simple.cfg
为 zoo.cfg
。
接着用编辑器打开zoo.cfg
文件,做如下操作
接着就是启动zookeeper,进入bin文件夹 启动zkServer.cmd
这样,便是启动成功了,因为我的是在本机上部署的,所以ip地址是回环地址0,0,0,0。端口号则是之前默认设置的2181。注意 :这个窗口不要关闭!让注册中心服务一直运行。
因为我的是maven工程,所以要添加依赖
同时,在业务层做如下,这里给出我的例子,接口及实体类省略。
控制层
好了,写完这些,我们还要在配置文件中添加dubbo的配置。
首先,在业务层中作为生产者,需要在spring配置文件中添加如下
注意,scheme不要忘了引入
另外,scheme文件要手动添加,在eclipse
中点击Windows-->preference
,在搜索框输入xml
,点击XML Catalog
,找到add
添加,如下图
同时,作为消费者的控制层也要添加如下,scheme导入同上
补充说明:
dubbo:registry 标签一些属性的说明:
dubbo:service标签的一些属性说明:
这个是dubbo的客户端监控中心。
我的版本是dubbo-admin-2.5.4.war,大家可以在网上下载到,解压后放到tomcat安装处的webapps
下
这里注意,如果监控中心与注册中心在同一台服务器上,可以不需要任何配置。
如果不在同一台,则需要修改解压文件后的WEB-INF
下的dubbo.properties
文件
这里的ip地址就需要修改了。
dubbo.registry.address=zookeeper://127.0.0.1:2181
配置好后,启动tomcat,在浏览器中输入http://localhost:8080/dubbo
(这里的dubbo是我的dubbo admin的项目名字,可以更改。)登录时需要用户名root
和密码root
。
就可以看到如下图片,有提供者和消费者注册的服务了。我们也可以对它们进行管理操作。
另外,这里谈一谈我在实践中遇到的问题,花费了不少的时间。
在运行的时候经常报错,无非是如下这里个问题,我做一个归纳:
到此基本上就已经结束了,只是明白了dubbo最基本的使用,即应用之间的rpc调用,服务提供者和使用者。Dubbo还提供了其他很多高级特性,如路由规则、参数回调、服务分组、服务降级等等,而且很多特性在给出内置实现的基础上,还给出了扩展的接口,我们可以给出自定义的实现,非常方便而且强大。至于zookeeper,我这里也只是单机配置,还没有尝试集群配置。以后再慢慢深入研究。
windows下搭建dubbo+zookeeper环境与使用
原文:https://www.cnblogs.com/mengen/p/10912387.html