zoukankan      html  css  js  c++  java
  • windows下 zookeeper dubbo 安装+配置+demo 详细图文教程

    Java集群优化——dubbo+zookeeper构建

    互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的。现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应。

    下面我将讲解dubbo框架的基础配置。最后会放上demo下载链接。

    本文旨在dubbo demo,会忽略一些用法,
    对一些具体的api配置可以参考dubbo官方:http://dubbo.io/ 的用户指南,整体的搭建过程不算复杂。



    Provider: 暴露服务的服务提供方。
    Consumer: 调用远程服务的服务消费方。
    Registry: 服务注册与发现的注册中心。

    dubbo 简单的讲就是把不同服务的接口对外提供给注册中心,注册中心在提供给调用者。
    所以一个可运行的demo就需要一个注册中心,一个生产者,一个消费者。
    生产者和消费者这里分别使用java服务实现。注册中心可以是多种多样,这是选用官方推荐的zookeeper.最好使用zk。

    1.zookeeper的安装和配置
    下载后解压到自己想要的位置,这个东西是免安装的。这时我们安装好了。下面是配置一下
    1.把conf目录下的zoo_sample.cfg改名成zoo.cfg,这里我是先备份了zoo_sample.cfg再改的名。

    把zoo.cfg里面的内容改成:

    # The number of milliseconds of each tick
    tickTime=2000
    # The number of ticks that the initial
    # synchronization phase can take
    initLimit=10
    # The number of ticks that can pass between
    # sending a request and getting an acknowledgement
    syncLimit=5
    # the directory where the snapshot is stored.
    # do not use /tmp for storage, /tmp here is just
    # example sakes.
    dataDir=D:\zookeeper-3.4.7\data
    dataLogDir=D:\zookeeper-3.4.7\log
    # the port at which the clients will connect
    clientPort=2181
    # the maximum number of client connections.
    # increase this if you need to handle more clients
    #maxClientCnxns=60
    #
    # Be sure to read the maintenance section of the
    # administrator guide before turning on autopurge.
    #
    # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
    #
    # The number of snapshots to retain in dataDir
    #autopurge.snapRetainCount=3
    # Purge task interval in hours
    # Set to "0" to disable auto purge feature
    #autopurge.purgeInterval=1

    大家可以直接copy,一些带有“#”号的配置项也留着,以后方便扩展。
    拷贝成功后保存即可。
    我们再配置一下这个环境变量就可以运行zookeeper了。(本文基于Windows已经配置过JAVA_HOME并且配置正确)
    新增环境变量:ZOOKEEPER_HOME  
    变量值:D:zookeeper-3.4.7 (变量值要根据你下的zookeeper包的放置位置)



    再在系统变量path最后添加: ;%ZOOKEEPER_HOME%/bin; %ZOOKEEPER_HOME%/conf 并保存就可以了

    这个时候就可以验证我们到底有没有安装成功了

    点击bin目录下的zkServer.cmd 这时候出现下面的提示就说明配置成功了。

    注意 :这个窗口不要关闭!让注册中心服务一直运行。

    2.生产者和消费者项目的运行
    下面大家可以去下载我的demo并导入eclipse,下载地址在文章最后

    导入两个工程后 先修改c_provider项目的applicationContext.xml文件,这个文件有三个红叉的话并不影响运行,
    可以去下载dubbo.xsd文件(这个文件在我的demo包中有提供,demo包下载地址在随后有提供),放到你自己放置的位置,然后Window->Preferences->XML->XML Catalog 然后add

    Location 是你的dubbo.xsd文件地址
    保存后 Project->clean 就行了
    这个时候我们再来修改applicationContext.xml,打开该文件     
    <dubbo:registry address="zookeeper://192.168.62.56:2181" />
    只要把这个修改成192.168.62.56你自己的ip就行了
    自己的ip可以这样查看 windows 然后输入cmd

    就是那个ipV4地址

    后面的那个端口号就是 那个coo.cfg里面的clientPort=2181这一项配置
    然后运行一下 Provider.java文件就行了
    注意:运行后不要关闭!

     
    打印这个出来就行说明正确了.
    这个时候可以看一下zookeeper的客户端的日志。已经可以监控到这些服务了。

    这个时候把 consumer的applicationContext.xml文件里面的ip做同样修改
    运行:Consumer.java 可以看到
     

    至此,全部配置成功,dubbo的demo已经完成。


    行文匆忙,不足之处希望大家在文章下讨论、指正
  • 相关阅读:
    Realtime crowdsourcing
    maven 常用插件汇总
    fctix
    sencha extjs4 command tools sdk
    首次吃了一颗带奶糖味的消炎药,不知道管用不
    spring mvc3 example
    ubuntu ati driver DO NOT INSTALL recommand driver
    yet another js editor on windows support extjs
    how to use springsource tools suite maven3 on command
    ocr service
  • 原文地址:https://www.cnblogs.com/Lzf127/p/7155332.html
Copyright © 2011-2022 走看看