- 连接到注册中心使用 protobuf 序列化传输
- 消费者与提供者使用 protostuff 序列化传输
- 网络通信采用 netty 实现tcp通信
模块名称 | 说明 |
---|---|
register | 注册中心 |
common | 一些公共使用类 |
api | 暴露在外的接口 |
provider | 提供调用的服务 |
consumer | 消费者服务 |
admin | 监控中心,提供可视化数据展示 |
目录 | 说明 |
---|---|
protocol | ProtoBuffer的proto文件 |
release | 打包完成的tar.gz |
注解名称 | 使用说明 |
---|---|
@RpcService | 类中声明为rpc的类 |
- 打包
mvn clean package
- 消费者使用,引入maven
<dependencies>
<dependency>
<groupId>com.github.chenmingq.rpc.demo.api</groupId>
<artifactId>api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.github.chenmingq.rpc.consumer</groupId>
<artifactId>consumer</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
- 提供者者使用,引入maven
<dependencies>
<dependency>
<groupId>com.github.chenmingq.rpc.demo.api</groupId>
<artifactId>api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.github.chenmingq.rpc.provider</groupId>
<artifactId>provider</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
- API使用,引入maven
<dependency>
<groupId>com.github.chenmingq.rpc.api</groupId>
<artifactId>api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>