dubbo如何连接zookeepr(一)

栏目: 服务器 · 发布时间: 5年前

内容简介:这次主要是对dubbo 和zookeeper的配置做个记录,以便以后自己忘记了,或者踩的坑再次被踩zookeerer类似 springcloud中的Eureka都做为注册中心,用srpingboot建立三个项目生产者,消费者,公共接口,引用阿里的dubbo做为rpc框架, 生产者负责实现接口的业务逻辑 并且在zookeeper注册中心中注册,同是消费者也连接zookeeper注册中心进行消息调用 。优点:

这次主要是对dubbo 和zookeeper的配置做个记录,以便以后自己忘记了,或者踩的坑再次被踩

快速阅读

zookeerer类似 springcloud中的Eureka都做为注册中心,用srpingboot建立三个项目生产者,消费者,公共接口,引用阿里的dubbo做为rpc框架, 生产者负责实现接口的业务逻辑 并且在zookeeper注册中心中注册,同是消费者也连接zookeeper注册中心进行消息调用 。

优点:

做为分布式服务架构,将核心业务抽取出来,稳定服务器,同时扩展方便 。可以针对高并发数据进行快速合理的扩展和监控。提高集群的利用率

zookeeper的配置

创建spring boot项目进行连接zookeeper

  1. 用Ideal创建一个maven项目 ,在项目里添加三个module

这三个项目分别是生产者dubboprovider 消费者dubboconsumer 接口duoboapi

创建一个maven的项目

dubbo如何连接zookeepr(一)

输入项目名字

dubbo如何连接zookeepr(一)

下一步

dubbo如何连接zookeepr(一)

进入项目界面

dubbo如何连接zookeepr(一)

新建provider module

dubbo如何连接zookeepr(一)

dubbo如何连接zookeepr(一)

dubbo如何连接zookeepr(一)

同样的方法 创建其它两个module,结果如下所示三个module创建完毕

dubbo如何连接zookeepr(一)

  1. 配置主项目 pom.xml

引用三个主要的依赖,

dubbo-spring-boot-starter: 在spring容器中注入特定bean ,集成了dubbo和spring boot

zookeeper:zookeeper的依赖

zkclient:zookeeper的客户端依赖

<dependencies>
        <dependency>
            <groupId>com.alibaba.spring.boot</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
            <version>1.0.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
            <version>3.4.13</version>
        </dependency>
        <dependency>
            <groupId>com.101tec</groupId>
            <artifactId>zkclient</artifactId>
            <version>0.10</version>
        </dependency>
    </dependencies>
  1. 定义接口

在dubboapi 模块中 java 下,新建一个类com.hcb.Service.IHelloService

package com.hcb.Service;

public interface  IHelloService {
    String SayHello(String name);
}
  1. 实现 生产者模块

在该模块的pom.xml引用接口

<groupId>com.hcb</groupId>
    <artifactId>dubboprovider</artifactId>
    <dependencies>
        <dependency>
            <groupId>com.hcb</groupId>
            <artifactId>dubboapi</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>
    </dependencies>

新建main入口方法

引用@SpringBootApplication,@EnableDubboConfiguration 注解

  • @SpringBootApplication 整合了三个注解。(默认属性)@Configuration + @EnableAutoConfiguration + @ComponentScan
  • @Configuration 是和@Bean 把实体model翻译成了xml的配置文件 ,使配置更简单
  • @EnableAutoConfiguration 能够自动配置spring的上下文,试图猜测和配置你想要的bean类,通常会自动根据你的类路径和你的bean定义自动配置。
  • @ComponentScan 会自动扫描指定包下的全部标有@Component的类,并注册成bean,当然包括@Component下的子注解@Service,@Repository,@Controller。
  • @EnableDubboConfiguration, 表示要开启dubbo功能.

参考: https://www.cnblogs.com/MaxElephant/p/8108140.html

package com.hcb;

import com.alibaba.dubbo.spring.boot.annotation.EnableDubboConfiguration;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import java.util.concurrent.CountDownLatch;

@SpringBootApplication
@EnableDubboConfiguration
public class provider {
    public static void main(String[] args) throws InterruptedException {
        SpringApplication.run(provider.class,args);
        new CountDownLatch(1).await();
    }
}

定义一个类com.hcb.Service.HelloService 来实现 接口

@Service注解,将自动注册到Spring容器,不需要再定义bean了

@component (把普通pojo实例化到spring容器中,相当于配置文件中的

<bean id="" class=""/>)

泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),

package com.hcb.Service;

import com.alibaba.dubbo.config.annotation.Service;
import org.springframework.stereotype.Component;

@Service
@Component
public class HelloSevice implements IHelloService {
    public String SayHello(String name){
        return "hi "+name;
    }
}

resoruces中新建application.properties配置 文件

指定名字并给出要注册的zookeepr的地址

spring.dubbo.appname=dubboprovider
spring.dubbo.registry=zookeeper://192.168.159.131:2181

启动

在provider类中在击main方法所在的类,然后选择run

dubbo如何连接zookeepr(一)

程序正常启动不报错

dubbo如何连接zookeepr(一)


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

响应式Web设计

响应式Web设计

本·弗莱恩 (Ben Frain) / 奇舞团 / 人民邮电出版社 / 2017-2-1 / CNY 59.00

本书将当前Web 设计中热门的响应式设计技术与HTML5 和CSS3 结合起来,为读者全面深入地讲解了针对各种屏幕大小设计和开发现代网站的各种技术。书中不仅讨论了媒体查询、弹性布局、响应式图片,更将最新和最有用的HTML5 和CSS3 技术一并讲解,是学习最新Web 设计技术不可多得的佳作。一起来看看 《响应式Web设计》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具