概述
在上一篇基于基于Zookeeper服務(wù)的RPC服務(wù)發(fā)布訂閱中我們已經(jīng)構(gòu)建了一個rpc服務(wù),但是這個服務(wù)的代碼都是揉在一起的,這樣不便于服務(wù)端與客戶端不在一起的地方使用。
在本篇中,我們將這個代碼的架構(gòu)做一定的拆分,按照api,client,server的方式拆分
參考截圖

Paste_Image.png
thrift- api
將thrift生成的java文件以jar的形式對外提供,方便客戶端與服務(wù)端共同調(diào)用。
thrift-support
主要提供服務(wù)端注冊服務(wù)到zookeeper,客戶端從注冊中心獲取服務(wù),客戶端連接池,客戶端代理,以及客戶端服務(wù)端與spring結(jié)合等公共組件服務(wù)
thrift-server
對外提供的thrift服務(wù),以單獨的進程運行
需引入如下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
模擬外部客戶端調(diào)用,單獨的進程運行
需引入如下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
歡迎大家掃碼關(guān)注我的微信公眾號,與大家一起分享技術(shù)與成長中的故事。

我的微信公眾號.jpg