一款十分简单的rpc框架 渣渣性能 仅供娱乐消遣
- 采用最传统的阻塞io,性能足以被任何框架秒杀
纯jdk实现,无任何第三方依赖
- 同步调用
没有任何优化的结果:
Request count: 256000, time: 506 second, qps: 505
本屌将同步方式改为炫酷的AQS实现,放弃使用sync关键字(原因在于sync是基于字节码,在jvm指令层实现的同步,开销很大,而AQS基于语义实现的同步)性能提升了3倍,优化效果很棒!
Request count: 256000, time: 177 second, qps: 1446
本屌又将序列化方式换为google的proto实现 性能提升不是很明显,因为只是将字节压缩了,测试跑在同一台机器上,没法体现。
Request count: 256000, time: 141 second, qps: 1815
本屌将服务端的反射实现改为cglib而不是用jdk原生实现,性能有所提高。
(最新数据)Request count: 256000, time: 116 second, qps: 2206
- 网络接口层抽象
- 自定义实现注册中心
- spi加载机制
- spring支持
- 异步调用支持