失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > dubbo整合springmvc 使用 学习二(spring+dubbo+zookeeper单机服务)

dubbo整合springmvc 使用 学习二(spring+dubbo+zookeeper单机服务)

时间:2020-01-28 11:21:55

相关推荐

dubbo整合springmvc 使用 学习二(spring+dubbo+zookeeper单机服务)

学习目录在上一篇中有了,这篇我们来写一个本地的单服务的demo,下面我们看看需要什么!!!

1、zookeeper的安装:

(1)、zookeeper 的安装很简单,下载架包解压缩,解压缩后的目录下有个conf目录也就是zookeeper的配置文件在该目录下,该目录下有一个zoo_sample.cfg 文件,复制一个修改为zoo.cfg,像我们这里是单服务的所以这里的配置只需要修改dataDir的目录就可以了其他的可以不用修改,dataDir的目录可以自己随便定义!!!

2、服务提供者

创建一个maven 工程,配置spring ,dubbo,zookeeper等相关的jar包,下面来具体看看!

(1)、目录结构

(2)、我们配置pom.xml下载我们需要的jar包,pom.xml配置文件如下:

(3)、写服务接口,服务接口的实现

package com.test.dubboser; public interface ServiceDemo { public String say(String str); } package com.test.dubboser; public class ServiceImp implements ServiceDemo{ public String say(String str) { System.err.println("server: "+str); return "hello: "+str; } }

(4)、向注册中心注册服务(将接口暴露出去),这里的注册中心是zookeeper

下面我们来看看,服务的配置也就是applicationProvider.xml这个配置文件中配置……

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="/schema/beans" xmlns:xsi="/2001/XMLSchema-instance" xmlns:dubbo="/schema/dubbo" xsi:schemaLocation="/schema/beans /schema/beans/spring-beans.xsd /schema/dubbo /schema/dubbo/dubbo.xsd "> <!-- 提供方应用信息,用于计算依赖关系,这个和client没必要一致 --> <dubbo:application name="hello-world-app-my" /> <!-- 使用multicast广播注册中心暴露服务地址 --> <!-- <dubbo:registry address="multicast://192.168.0.101:2181" /> --> <!-- 使用zookeeper广播注册中心暴露服务地址 --> <dubbo:registry protocol="zookeeper" address="192.168.0.101:2181"/> <!--和上面的配置是一样的效果 --> <!-- <dubbo:registry address="zookeeper://192.168.0.101:2181" /> --> <!-- 本机 伪集群 测试 --> <!-- <dubbo:registry protocol="zookeeper" address="192.9.145.19:2181,192.9.145.19:2182,192.9.145.19:2183" /> --> <!-- 用dubbo协议在20880端口暴露服务 --> <dubbo:protocol name="dubbo" port="20880" /> <!-- 声明需要暴露的服务接口 --> <dubbo:service interface="com.test.dubboser.ServiceDemo" ref="demoService" /> <!-- 和本地bean一样实现服务 --> <bean id="demoService" class="com.test.dubboser.ServiceImp"/> </beans>

(5)、所有的准备都好了,下面我们启动服务提供者(提前启动zookeeper)

package com.test.dubboser; import java.io.IOException; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Main { public static void main(String[] args) throws IOException { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new String[] { "applicationProvider.xml" }); context.start(); System.out.println("按任意键退出"); System.in.read(); } }

ok这样我们的服务提供者就好了,是不是很乱,我感觉也有点,所以之后会有个自己的小总结……

我们的服务提供者好了,我们来看看我们的服务消费者,也就是调用我们这里的服务的程序……

3、服务消费者开发

服务消费者的编写还是按照服务提供者一样的顺序来

愿意了解框架技术或者源码的朋友直接求求交流分享技术:2042849237

分布式的一些解决方案,有愿意了解的朋友可以找我们团队探讨

更多详细源码参考来源:/technology

dubbo+springmvc+mybatis+ehcache+redis J2ee分布式架构, restful, kafka, shiro

标签: dubbo+springmvc+mybatis+ehcache+redis J2ee分布式架构, restful, kafka, shiro

如果觉得《dubbo整合springmvc 使用 学习二(spring+dubbo+zookeeper单机服务)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。