一、 项目结构
按照 Dubbo 官方文档推荐的服务最佳化方案,建议将服务接口、服务模型、服务异常等均放在单独的 API 包中,所以项目采用 maven 多模块的构建方式,在 spring-dubbo 下构建三个子模块:
- dubbo-common:公共模块,用于存放公共的接口和 bean,被 dubbo-provider 和 dubbo-provider 所引用;
- dubbo-provider :服务的提供者,提供商品的查询服务;
- dubbo-provider :是服务的消费者,调用 provider 提供的查询服务。
另外,本项目 Dubbo 的搭建采用 ZooKeeper 作为注册中心。
二、项目依赖
在父工程的项目中统一导入依赖 Dubbo 的依赖:
<!--dubbo 依赖-->
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>2.6.2</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-framework</artifactId>
<version>4.0.0</version>
<exclusions>
<exclusion>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artif