概述
在上一篇基于基于Zookeeper服务的RPC服务发布订阅中我们已经构建了一个rpc服务,但是这个服务的代码都是揉在一起的,这样不便于服务端与客户端不在一起的地方使用。
在本篇中,我们将这个代码的架构做一定的拆分,按照api,client,server的方式拆分
参考截图
thrift- api
将thrift生成的java文件以jar的形式对外提供,方便客户端与服务端共同调用。
thrift-support
主要提供服务端注册服务到zookeeper,客户端从注册中心获取服务,客户端连接池,客户端代理,以及客户端服务端与spring结合等公共组件服务
thrift-server
对外提供的thrift服务,以单独的进程运行
需引入如下jar,
<dependency>
<groupId>com.yangyang.thrift</groupId>
<artifactId>thrift-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yangyang.thrift</groupId>
<artifactId>thrift-support</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
thrift-client
模拟外部客户端调用,单独的进程运行
需引入如下jar
<dependency>
<groupId>com.yangyang.thrift</groupId>
<artifactId>thrift-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yangyang.thrift</groupId>
<artifactId>thrift-support</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
本文demo地址:
码云:https://git.oschina.net/shunyang/thrift-zk.git
github:https://github.com/shunyang/thrift-zookeeper-rpc.git
欢迎大家扫码关注我的微信公众号,与大家一起分享技术与成长中的故事。