作者:冰河
微信:hacker_binghe
QQ:2711098650
微信公众号: 冰河技术
本群的宗旨是给大家提供一个良好的技术学习交流平台,所以杜绝一切广告!由于微信群人满 100 之后无法加入,请扫描下方二维码先添加作者 “冰河” 微信(hacker_binghe),备注:学习加群
。
分享各种编程语言、开发技术、分布式与微服务架构、分布式数据库、分布式事务、云原生、大数据与云计算技术和渗透技术。另外,还会分享各种面试题和面试技巧。内容在 冰河技术 微信公众号首发,强烈建议大家关注。
加入星球 冰河技术,可以获得本站点所有学习内容的指导与帮助。如果你遇到不能独立解决的问题,也可以添加冰河的微信:hacker_binghe, 我们一起沟通交流。另外,在星球中不只能学到实用的硬核技术,还能学习实战项目!
关注 冰河技术公众号,回复 星球
可以获取入场优惠券。
关注 冰河技术 微信公众号:
回复 “并发编程2” 领取《深入理解高并发编程(第2版)》PDF电子书。
回复 “并发编程” 领取《深入理解高并发编程(第1版)》PDF电子书。
回复 “并发源码” 领取《并发编程核心知识(源码分析篇 第1版)》PDF电子书。
回复 “SA实战” 领取《SpringCloud Alibaba实战》PDF电子书。
回复 “rpc1” 领取《从零开始手写RPC框架》PDF电子书。
回复 “ioc1” 领取《Spring IOC核心技术(第1版)》PDF电子书。
回复 “渗透笔记” 领取《冰河的渗透实战笔记》PDF电子书。
回复 “我要进大厂” 领取《我要进大厂系列之面试圣经(第1版)》PDF电子书。
回复 ”限流“ 领取《亿级流量下的分布式解决方案》PDF电子书。
回复 “设计模式” 领取《深入浅出Java23种设计模式》PDF电子书。
回复 “Java8新特性” 领取 《Java8新特性教程》PDF电子书。
回复 “分布式存储” 领取《跟冰河学习分布式存储技术》 PDF电子书。
回复 “Nginx” 领取《跟冰河学习Nginx技术》PDF电子书。
回复 “互联网工程” 领取《跟冰河学习互联网工程技术》PDF电子书。
回复 “mysql基础” 领取《MySQL核心知识手册》PDF电子书。
回复 “冰河索引” 领取《冰河技术公号文章索引》PDF电子书。
回复 “ngx2” 领取《Nginx核心技术手册》PDF电子书。
bhrpc是一款分布式的、高性能、可扩展的RPC框架。
bhrpc框架支持如下功能:
1.注册中心的插件化动态扩展
2.序列化方式插件化动态扩展
3.动态代理插件化动态扩展
4.服务的动态注册与发现
5.参数验证、结果缓存
6.服务调用区分版本号(对标Dubbo)
7.超时重试
8.同步调用、异步调用、异步执行
9.异步回调
10.事件通知
11.SPI扩展技术
12.支持原生RPC
13.支持基于Spring(XML/注解)整合RPC
14.支持SpringBoot整合RPC
15.支持Docker整合RPC
16.支持K8S整合RPC
待扩展功能:
1.路由控制与管理
2.流控分析与管理
3.限流、熔断、降级
4.并发控制、连接控制、延迟连接
5.全链路监控
6.多SDK建设
7.其他暂时还未想到的扩展
- 这次我设计了一款TPS百万级别的分布式、高性能、可扩展的RPC框架
- 《RPC手撸专栏》第1章:开篇,从零开始手撸一个能在实际场景使用的高性能RPC框架
- 《RPC手撸专栏》第2章:高性能分布式RPC框架整体架构设计
- 《RPC手撸专栏》第3章:RPC服务核心注解的设计与实现
- 《RPC手撸专栏》第4章:实现RPC服务核心注解的扫描与解析
- 《RPC手撸专栏》第5章:服务提供者收发消息基础功能实现
- 《RPC手撸专栏》第6章:自定义网络传输协议的实现
- 《RPC手撸专栏》第7章:自定义网络编解码的实现
- 《RPC手撸专栏》第8章:模拟服务消费者与服务提供者之间的数据交互
- 《RPC手撸专栏》第9章:服务提供者调用真实方法的实现
- 《RPC手撸专栏》第10章:测试服务提供者调用真实方法
- 《RPC手撸专栏》第11章:服务提供者扩展支持CGLib调用真实方法
- 《RPC手撸专栏》第12章:实现服务消费者与服务提供者直接通信
- 《RPC手撸专栏》第13章:服务消费者异步转同步直接获取返回结果
- 《RPC手撸专栏》第14章:服务消费者异步转同步的自定义Future与AQS实现
- 《RPC手撸专栏》第15章:服务消费者同步、异步、单向调用的实现
- 《RPC手撸专栏》第16章:服务消费者回调方法的实现
- 《RPC手撸专栏》第17章:服务消费者实现动态代理功能屏蔽构建请求协议对象的细节
- 《RPC手撸专栏》第18章:服务消费者整合动态代理实现直接调用接口返回结果数据
- 《RPC手撸专栏》第19章:服务消费者动态代理实现异步调用
- 《RPC手撸专栏》第20章:服务消费者动态代理扩展优化
- 《RPC手撸专栏》第21章:注册中心基础服务功能的实现
- 《RPC手撸专栏》第22章:服务提供者整合注册中心实现服务注册
- 《RPC手撸专栏》第23章:服务消费者整合注册中心实现服务发现
- 《RPC手撸专栏》第24章:服务消费者实现基于随机算法的负载均衡策略
- 《RPC手撸专栏》第25章:对标Dubbo实现SPI扩展机制的基础功能
- 《RPC手撸专栏》第26章:基于SPI扩展JDK序列化与反序列化机制
- 《RPC手撸专栏》第27章:基于SPI扩展Json序列化与反序列化机制
- 《RPC手撸专栏》第28章:基于SPI扩展Hessian2序列化与反序列化机制
- 《RPC手撸专栏》第29章:基于SPI扩展FST序列化与反序列化机制
- 《RPC手撸专栏》第30章:基于SPI扩展Kryo序列化与反序列化机制
- 《RPC手撸专栏》第31章:基于SPI扩展Protostuff序列化与反序列化机制
- 《RPC手撸专栏》第32章:基于SPI扩展JDK动态代理机制
- 《RPC手撸专栏》第33章:基于SPI扩展CGLib动态代理机制
- 《RPC手撸专栏》第34章:基于SPI扩展Javassist动态代理机制
- 《RPC手撸专栏》第35章:基于SPI扩展ByteBuddy动态代理机制
- 《RPC手撸专栏》第36章:基于SPI扩展ASM动态代理机制
- 《RPC手撸专栏》第37章:基于SPI扩展JDK反射机制调用真实方法
- 《RPC手撸专栏》第38章:基于SPI扩展CGLib反射机制调用真实方法
- 《RPC手撸专栏》第39章:基于SPI扩展Javassist反射机制调用真实方法
- 《RPC手撸专栏》第40章:基于SPI扩展ByteBuddy反射机制调用真实方法
- 《RPC手撸专栏》第41章:基于SPI扩展ASM反射机制调用真实方法
- 《RPC手撸专栏》第42章:基于SPI扩展随机算法负载均衡策略
- 《RPC手撸专栏》第43章:基于SPI扩展加权随机算法负载均衡策略
- 《RPC手撸专栏》第44章:基于SPI扩展轮询算法负载均衡策略
- 《RPC手撸专栏》第45章:基于SPI扩展加权轮询算法负载均衡策略
- 《RPC手撸专栏》第46章:基于SPI扩展Hash算法负载均衡策略
- 《RPC手撸专栏》第47章:基于SPI扩展加权Hash算法负载均衡策略
- 《RPC手撸专栏》第48章:基于SPI扩展源IP地址Hash算法负载均衡策略
- 《RPC手撸专栏》第49章:基于SPI扩展源IP地址加权Hash算法负载均衡策略
- 《RPC手撸专栏》第50章:基于SPI扩展Zookeeper的一致性Hash算法负载均衡策略
- 《RPC手撸专栏》第51章:基于SPI扩展增强型加权随机算法负载均衡策略
- 《RPC手撸专栏》第52章:基于SPI扩展增强型加权轮询算法负载均衡策略
- 《RPC手撸专栏》第53章:基于SPI扩展增强型加权Hash算法负载均衡策略
- 《RPC手撸专栏》第54章:基于SPI扩展增强型加权源IP地址Hash算法负载均衡策略
- 《RPC手撸专栏》第55章:基于SPI扩展增强型Zookeeper一致性Hash算法负载均衡策略
- 《RPC手撸专栏》第56章:基于SPI扩展最少连接数负载均衡策略
- 《RPC手撸专栏》第57章:基于SPI扩展实现Zookeeper注册中心
- 《RPC手撸专栏》第58章:心跳机制交互数据模型设计
- 《RPC手撸专栏》第59章:心跳机制增强数据模型与协议解析设计
- 《RPC手撸专栏》第60章:服务消费者向服务提供者发送心跳信息并接收心跳响应
- 《RPC手撸专栏》第61章:服务消费者心跳间隔时间配置化
- 《RPC手撸专栏》第62章:服务提供者向服务消费者发送心跳消息并接收心跳响应
- 《RPC手撸专栏》第63章:服务提供者心跳间隔时间配置化
- 《RPC手撸专栏》第63-X章:阶段性作业
- 《RPC手撸专栏》第64章:服务提供者增强型心跳检测机制的实现
- 《RPC手撸专栏》第65章:服务消费者增强型心跳检测机制的实现
- 《RPC手撸专栏》第66章:服务消费者实现服务订阅的重试机制
- 《RPC手撸专栏》第67章:服务消费者连接服务提供者的重试机制
- 《RPC手撸专栏》第68章:服务提供者整合Spring
- 《RPC手撸专栏》第69章:基于Spring XML接入服务提供者
- 《RPC手撸专栏》第70章:基于Spring注解接入服务提供者
- 《RPC手撸专栏》第71章:服务消费者整合Spring
- 《RPC手撸专栏》第72章:基于Spring XML接入服务消费者
- 《RPC手撸专栏》第73章:基于Spring注解接入服务消费者
- 《RPC手撸专栏》第74章:服务提供者整合SpringBoot
- 《RPC手撸专栏》第75章:基于SpringBoot接入服务提供者
- 《RPC手撸专栏》第76章:服务消费者整合SpringBoot
- 《RPC手撸专栏》第77章:基于SpringBoot接入服务消费者
- 《RPC手撸专栏》第78章:基于Docker接入服务提供者
- 《RPC手撸专栏》第79章:基于Docker接入服务消费者
- 《RPC手撸专栏》第80章:整合SpringCloud Alibaba实际项目
- 《RPC手撸专栏》第80章-X:整合SpringCloud Alibaba阶段作业
- 《RPC手撸专栏》第81章:结果缓存通用模型设计
- 《RPC手撸专栏》第82章:服务提供者支持结果缓存
- 《RPC手撸专栏》第83章:服务消费者支持结果缓存
- 《RPC手撸专栏》第83章-X:结果缓存阶段作业
- 《RPC手撸专栏》第84章:服务消费者直连某个服务提供者
- 《RPC手撸专栏》第85章:服务消费者直连多个服务提供者
- 《RPC手撸专栏》第85章-X:路由控制阶段作业
- 《RPC手撸专栏》第86章:服务消费者支持延迟连接服务提供者
- 《RPC手撸专栏》第87章:服务消费者支持非延迟连接服务提供者
- 《RPC手撸专栏》第87章-X:延迟连接阶段作业
- 《RPC手撸专栏》第88章:并发控制基础模型设计
- 《RPC手撸专栏》第89章:服务提供者支持并发控制
- 《RPC手撸专栏》第90章:服务消费者支持并发控制
- 《RPC手撸专栏》第90章-X:并发控制阶段作业
- 《RPC手撸专栏》第91章:流控分析后置处理器模型设计
- 《RPC手撸专栏》第92章:服务提供者整合流控分析
- 《RPC手撸专栏》第93章:服务消费者整合流控分析
- 《RPC手撸专栏》第93章-X:流控分析阶段作业
- 《RPC手撸专栏》第94章:连接控制基础模型设计
- 《RPC手撸专栏》第95章:服务提供者整合连接控制
- 《RPC手撸专栏》第95章-X:连接控制阶段作业
- 《RPC手撸专栏》第96章:基于SPI扩展最早连接淘汰策略
- 《RPC手撸专栏》第97章:基于SPI扩展最晚连接淘汰策略
- 《RPC手撸专栏》第98章:基于SPI扩展先进先出连接淘汰策略
- 《RPC手撸专栏》第99章:基于SPI扩展使用次数最少连接淘汰策略
- 《RPC手撸专栏》第100章:基于SPI扩展最近未被使用连接淘汰策略
- 《RPC手撸专栏》第101章:基于SPI扩展随机连接淘汰策略
- 《RPC手撸专栏》第102章:基于SPI扩展拒绝连接淘汰策略
- 《RPC手撸专栏》第102章-X:SPI扩展连接拒绝策略阶段作业
- 《RPC手撸专栏》第103章:数据缓冲基础模型设计
- 《RPC手撸专栏》第104章:服务提供者整合数据缓冲
- 《RPC手撸专栏》第105章:服务消费者整合数据缓冲
- 《RPC手撸专栏》第105章-X:数据缓冲阶段作业
- 《RPC手撸专栏》第106章:服务容错设计与研发
- 《RPC手撸专栏》第107章:服务容错效果测试
- 《RPC手撸专栏》第108章:服务容错失效问题修复
- 《RPC手撸专栏》第108章-X:服务容错阶段作业
- 《RPC手撸专栏》第109章:服务限流基础模型设计
- 《RPC手撸专栏》第110章:服务提供者整合服务限流
- 《RPC手撸专栏》第111章:服务消费者整合服务限流
- 《RPC手撸专栏》第111章-X:服务限流阶段作业
- 《RPC手撸专栏》第112章:基于SPI扩展Semaphore限流策略
- 《RPC手撸专栏》第113章:基于SPI扩展Guava限流策略
- 《RPC手撸专栏》第113章-X:基于SPI扩展限流策略阶段作业
- 《RPC手撸专栏》第114章:服务提供者超出限流上限触发的规则
- 《RPC手撸专栏》第115章:服务消费者超出限流上限触发的规则
- 《RPC手撸专栏》第115章-X:超出限流规则阶段作业
- 《RPC手撸专栏》第116章:服务熔断基础模型设计
- 《RPC手撸专栏》第117章:服务提供者整合服务熔断
- 《RPC手撸专栏》第118章:服务消费者整合服务熔断
- 《RPC手撸专栏》第118章-X:服务熔断阶段作业
- 《RPC手撸专栏》第119章:基于SPI扩展错误率熔断策略
- 《RPC手撸专栏》第119章-X:基于SPI扩展熔断策略阶段作业
- 《RPC手撸专栏》第fix-01章:修复服务消费者读取配置优先级的问题
- 《RPC手撸专栏》第fix-02章:修复Zookeeper一致性Hash负载均衡泛型类型不匹配的问题
- 《RPC手撸专栏》第fix-03章:修复自定义扫描器递归扫描文件标识不起作用的问题
- 《RPC手撸专栏》第fix-04章:修复基于SpringBoot启动服务消费者Netty Group多次连接的问题
- 《RPC手撸专栏》第fix-05章:修复基于计数器的限流策略不起作用的问题
- 《RPC手撸专栏》第fix-06章:修复基于SpringBoot启动服务消费者无法同时连接多个服务提供者的问题
- 《RPC手撸专栏》第fix-07章:更新基于Semaphore的限流策略
- 《RPC手撸专栏》第fix-08章:优化服务熔断半开启状态的执行逻辑
- 《RPC手撸专栏》第120章:异常监控后置处理器基础模型设计
- 《RPC手撸专栏》第121章:服务提供者整合异常监控
- 《RPC手撸专栏》第122章:服务消费者整合异常监控