【e3项目学习二】——zk与dubbo的组合运用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013030601/article/details/79970868

【zk】

1.zk简介
官方推荐使用zookeeper注册中心。
注册中心负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互,注册中心不转发请求,压力较小。使用dubbo-2.3.3以上版本,建议使用zookeeper注册中心。
Zookeeper是Apacahe Hadoop的子项目,是一个树型的目录服务,支持变更推送,适合作为Dubbo服务的注册中心,工业强度较高,可用于生产环境,并推荐使用

Zookeeper:
  1、可以作为集群的管理工具使用。
  2、可以集中管理配置文件。

2.zk安装
安装环境:
Linux:centos7.0
Jdk:1.7以上版本

Zookeeper是java开发的可以运行在windows、linux环境。需要先安装jdk。
安装步骤:
第一步:安装jdk
第二步:把zookeeper的压缩包上传到linux系统。
第三步:解压缩压缩包
tar -zxvf zookeeper-3.4.6.tar.gz
第四步:进入zookeeper-3.4.6目录,创建data文件夹。
第五步:把zoo_sample.cfg改名为zoo.cfg
[root@localhost conf]# mv zoo_sample.cfg zoo.cfg
第六步:修改data属性:dataDir=/root/zookeeper-3.4.6/data
第七步:启动zookeeper
[root@localhost bin]# ./zkServer.sh start
关闭:[root@localhost bin]# ./zkServer.sh stop
查看状态:[root@localhost bin]# ./zkServer.sh status

注意:需要关闭防火墙。

3.zk验证

命令:ps aux|grep zookeeper  如果有下图内容输出,则证明已经启动


【dubbo监控中心】

1.百度搜索dobbo-admin对应的war
2.将该war包放到linux的tomcat的webapps中
3.启动tomcat
4.访问http://ip+端口号/dubbo-admin/

账号密码在解压的war包中的dubbo.properties配置文件中:dubbo-admin/WEB-INF/dubbo.properties


注意:
如果监控中心和注册中心在同一台服务器上,可以不需要任何配置。
如果不在同一台服务器,需要修改配置文件:
/root/apache-tomcat-7.0.47/webapps/dubbo-admin/WEB-INF/dubbo.properties

【zk与dubbo组合项目运用】

1.引入jar包(这里我只说明对应pom文件中的内容,如下)
-
 <!-- dubbo相关 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>dubbo</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.jboss.netty</groupId>
                    <artifactId>netty</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
        </dependency>
        <dependency>
            <groupId>com.github.sgroschupf</groupId>
            <artifactId>zkclient</artifactId>
        </dependency>
-
2.配置文件进行配置(zk的ip地址要修改成自己的)
-
    <!-- 使用dubbo发布服务 -->
    <!-- 提供方应用信息,用于计算依赖关系 -->
    <dubbo:application name="e3-manager" />
    <dubbo:registry protocol="zookeeper" address="192.168.37.139:2181" />
    <!-- 用dubbo协议在20880端口暴露服务 -->
    <dubbo:protocol name="dubbo" port="20880" />
    <!-- 声明需要暴露的服务接口 -->
    <dubbo:service interface="com.mark.service.ItemService" ref="itemServiceImpl" timeout="300000" />
-
3.启动测试(启动成功之后可以在控制台看到注册上去的接口,如下图)

【总结】

    之前对于这些内容只是在用别人做好的东西,现在自己将这些内容搞了搞发现还是很简单的,在做的过程中也遇到了一些小问题,提前将项目的日志输出打开,然后报错了跟着报错信息去查,去找就一定可以找到问题所在,所谓有果必有因。
    做到这里才是兴趣的开始,不过万事只要开头了,后面的就简单多了,最重要的还是要给自己自信,相信自己可以搞定,只不过是时间方式方法的问题,在这个基础上,去做一些事情就会让自己很有激情,并且在做完事情之后很有成就感,不过也还要记得多总结,加油~
阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页