前提:
安装好 vmware12 虚拟机,在虚拟机中安装好centos7系统, 修改 NET 模式的子网。
一、首先下载 zookeeper-3.4.6.tar.gz 包
二、上传到centos7中的 /root/soft/ (soft目录,统一管理)
三、解压tar包到指定目录
tar -zxvf /root/soft/zookeeper-3.4.6.tar.gz -C /usr/local/
四、在 zookeeper 的安装目录 ,目录下复制一份zoo_sample.cfg配置文件,改名为 zoo.cfg
cp /usr/local/zookeeper-3.4.6/conf/zoo_sample.cfg zoo.cfg
五、在zookeeper工作目录( /usr/local/zookeeper-3.4.6/),新建data文件夹
mkdir data
六、修改 zookeeper 安装目录/conf/zoo.cfg 文件:
dataDir= /usr/local/zookeeper-3.4.6/data
七、zookeeper 的启动、状态、停止
进入zookeeper的bin目录下:cd /usr/local/zookeeper-3.4.6/bin/
./zkServer.sh start //启动
./zkServer.sh status //查看状态
./zkServer.sh stop //关闭
第一个dubbox 程序
一、首先在pom文件中添加相关依赖
1 <dependency>
2 <groupId>com.alibaba</groupId>
3 <artifactId>dubbo</artifactId>
4 <version>2.8.4</version>
5 </dependency>
6 <dependency>
7 <groupId>org.apache.zookeeper</groupId>
8 <artifactId>zookeeper</artifactId>
9 <version>3.4.7</version>
10 </dependency>
11 <dependency>
12 <groupId>com.github.sgroschupf</groupId>
13 <artifactId>zkclient</artifactId>
14 <version>0.1</version>
15 </dependency>
知识兔View Code二、在application-service.xml中
1 <!--将要放入zookeeper服务中心的服务名称(模块)-->
2 <dubbo:application name="pyg_sellergoods_service" />
3 <!-- 配置服务所在位置(包名) -->
4 <dubbo:annotation package="cn.chao.pyg.sellergoods.service.impl" />
5 <!--加载dubbo配置,下面的端口代表发布在zookeeper注册中心中的服务占有的端口号,
6 默认为20880,如果有多个服务,则不能重复-->
7 <dubbo:protocol port="20881" name="dubbo" />
8 <!--2.zookeeper服务注册的地址-->
9 <dubbo:registry address="zookeeper://192.168.25.128:2181"/>
知识兔View Code三、在application-web.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <beans xmlns="http://www.springframework.org/schema/beans"
3 xmlns:mvc="http://www.springframework.org/schema/mvc"
4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5 xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
6 xsi:schemaLocation="http://www.springframework.org/schema/beans
7 http://www.springframework.org/schema/beans/spring-beans.xsd
8 http://www.springframework.org/schema/mvc
9 http://www.springframework.org/schema/mvc/spring-mvc.xsd
10 http://code.alibabatech.com/schema/dubbo
11 http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
12
13 <mvc:annotation-driven>
14 <!--使用fastjson进行java对象与json字符串的互相转换-->
15 <mvc:message-converters register-defaults="true">
16 <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
17 <property name="supportedMediaTypes" value="application/json"/>
18 <property name="features">
19 <array>
20 <value>WriteMapNullValue</value>
21 <value>WriteDateUseDateFormat</value>
22 </array>
23 </property>
24 </bean>
25 </mvc:message-converters>
26 </mvc:annotation-driven>
27
28 <!--指定模块名称-->
29 <dubbo:application name="pyg_manager_web" />
30 <!-- 指定谁去服务中心获取service-->
31 <dubbo:annotation package="cn.chao.pyg.manager.controller"/>
32 <!--zookeper服务中心的地址-->
33 <dubbo:registry address="zookeeper://192.168.25.128:2181"/>
34 </beans>
知识兔View Code四、在service模块、controller模块中的注解
1 service模块中
2 /**
3 * 注入到spring容器中
4 * 注意:这里必须是dubbo的service注解
5 * import com.alibaba.dubbo.config.annotation.Service;
6 */
7 @Resource
8 private TbBrandMapper tbBrandMapper;
9
10
11 controller模块中
12 /**
13 * 从zookeeper中拿到的service
14 * Reference注解是dubbo包中的
15 * 注意:import com.alibaba.dubbo.config.annotation.Reference;
16 */
17 @Reference
18 private IBrandService iBrandService;
知识兔View Code