# OurRPC **Repository Path**: Wiiber/our-rpc ## Basic Information - **Project Name**: OurRPC - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2021-01-19 - **Last Updated**: 2021-01-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OurRPC * Java高级Q2001项目作业3组 * * * 项目结构 * orpc-remoting 底层的传输 * orpc-registry 使用SPI机制加载的注册中心,实现服务发现及服务订阅 * orpc-cluster 集群管理,负载均衡 * orpc-rpc 底层传输协议,protocol * orpc-filter 拓展, Filter机制, 用于拓展日志,QPS,链路追踪 * orpc-common 公共包, 包含Config,Proxy及SPI等 * orpc-spring spring整合 > 若想有挑战性,可使用其他传输方案代替 * 第一小组: Registry 注册与发现 * orpc-registry+orpc-cluster * 因为服务订阅包含了集群下的发现 * 第二小组: Transporter 底层的C/S支持 * orpc-remoting * 基于netty4实现, 或其他方式 * 第三小组: 底层协议 protocol/Invoker * orpc-rpc * 自定义协议, Codec数据编解码 * 第四小组: Proxy代理,参数解析整理及SPI机制(不仅仅ServeiceLoader) * orpc-common+orpc-filter * Proxy代理 * 基于Sping的解析 * Filter的组合(拓展) * * * 1. 相关的基础接口,如Invoker,Protocol,RegistryService 接口, 可以有熟悉第四章的手写RPC的同学提供, 方便其他同学. 2. 每个模块尽量分api模块, 统一的接口包 3. 每个可拓展的包 如remoting, registry,cluster,rpc 可以在xxx-api下再建立个相关的实现包,如 ```shell script orpc-remoting orpc-remoting-api orpc-remoting-netty ```