• dubbo与zookeeper


    dubbo和zookeeper

    Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,作为业界知名的分布式SOA(面向服务的架构 )。实现服务的输出和输入功能,可以和 spring框架无缝集成。 注意这里的dubbo只是一个框架,至于你架子上放什么是完全取决于你。框架中要完成调度必须要有一个分布式的注册中心,储存所有服务的元数据,你可以用zk,也可以用别的,只是大家都用zk。

    ZooKeeper(注册中心)是一个分布式的,开放源码的分布式应用程序协调服务 ,zookeeper用来注册服务和进行负载均衡,单单有负载均衡还不 够,节点之间的数据和资源需要同步,ZooKeeper集群就天然具备有这样的功能; zookeeper通过心跳机制可以检测挂掉的机器并将挂掉机器的ip和服务对应关系从列表中删除。

    在java中的应用

    发布服务

    1、首先导入jar包

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>dubbo</artifactId>
    <version>2.5.7</version>
    </dependency>
    <dependency>
    <groupId>org.apache.zookeeper</groupId>
    <artifactId>zookeeper</artifactId>
    <version>3.4.10</version>
    </dependency>
    <dependency>
    <groupId>com.github.sgroschupf</groupId>
    < 大专栏  dubbo与zookeeperartifactId>zkclient</artifactId>
    <version>0.1</version>
    </dependency>

    2、在spring-service.xml中配置

    1
    2
    3
    4
    5
    6
    7
    8
    9
    	
    <!-- 提供方应用信息-->
    <dubbo:application name="travel-manager"/>
    <!-- 注册中心的地址 -->
    <dubbo:registry protocol="zookeeper" address="www.vm.com:2181"/>
    <!-- 用dubbo协议在20880端口暴露服务 -->
    <dubbo:protocol name="dubbo" port="20880"/>
    <!-- 声明需要暴露的服务接口 -->
    <dubbo:service interface="com.service.xxxService" ref="xxxServiceImpl" timeout="300000"/>

    3、启动tomcat,即可在dubbo在看到相应的服务接口

    调用服务

    在springmvc.xml中引用dubbo服务

    1
    2
    3
    4
    5
    6
    7
       <!-- 引用dubbo服务 -->
    <!-- 消费者相关信息,会在dubbo管理页面上显示 -->
    <dubbo:application name="travel-web"/>
    <!--zookeeper注册中心的地址 -->
    <dubbo:registry protocol="zookeeper" address="www.1801vm.com:2181"/>
    <!-- 声明引用的服务接口 -->
    <dubbo:reference interface="com.service.xxxService" id="xxxService"/>
  • 相关阅读:
    excel 读取
    MSDN异步编程概述 [C#] zzhttp://www.cnblogs.com/hxhbluestar/articles/60023.html
    window.opener showModelessDialog showModalDialog 获取|控制父窗体的区别
    MySql中文乱码解决方法
    关于随机数
    javascript 日期处理(注意事项)
    一个简单访问office程序的控件,不依赖officedll
    关于12306的bug
    回车提交
    js动态添加外部js(顶)
  • 原文地址:https://www.cnblogs.com/lijianming180/p/12302539.html
Copyright © 2020-2023  润新知