项目简介
Mini RPC是一个基于Spring Boot和Netty构建的轻量级RPC框架。其包含客户端、服务端和注册中心三个核心组件,支持服务的注册、发现、负载均衡和远程调用,旨在为微服务架构中的服务通信提供简单、高效的解决方案。
项目的主要特性和功能
- 服务注册与发现:服务端启动后将服务列表发布到注册中心,客户端通过注册中心订阅服务地址。
- 动态代理:客户端利用本地代理模块调用服务端,代理模块负责转换方法、参数等数据为网络字节流。
- 负载均衡:采用一致性哈希算法实现服务发现和负载均衡。
- 网络通信:借助Netty进行高效网络通信,支持自定义RPC协议的编解码。
- 序列化与反序列化:支持Hessian和JSON等多种序列化算法。
- 服务接口定义:提供服务接口定义模块,用于模拟真实RPC调用的测试。
安装使用步骤
1. 环境准备
- 操作系统:MacOS Big Sur 11.0.1
- 集成开发工具:IntelliJ IDEA
- 项目技术栈:Spring Boot 2.1.12.RELEASE + JDK 1.8.0_221 + Netty 4.1.42.Final
- 项目依赖管理工具:Maven 3.5.4
- 注册中心:Zookeeper 3.4.14
2. 启动注册中心
bash
zkServer start
3. 启动服务提供者
bash
RpcProviderApplication
4. 启动服务消费者
bash
RpcConsumerApplication
5. 测试RPC调用
在浏览器中输入以下URL进行测试:
http://localhost:8080/hello
成功返回结果:
hellomini rpc
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】