github: https://github.com/yds086/HereticOS
异数OS社区QQ群: 652455784
异数OS-织梦师(消息中间件 RPC技术)群: 476260389
纤手主要用于异数OS 之上性能级应用系统设计,他并不支持序列化等需要CPU密集型功能,因此他也不支持其他非C++语言平台,要求CPU同构(大端,小端),相比传统RPC 技术,提供10-100倍的调用性能提升,多样化的方案选择也使他可以面向不同性能级应用场合,方案原型都是最小化轻量级,开发者可以改造定义自己的RPC平台。
LPC主要用于相同CPU核内线程的过程调用,依赖异数OS 本地event组件,实现本地CPU核线程间快速调用,相比RPC,拥有最快的过程调用性能(IO密集型),每CPU核最大20M左右线程间调用性能,不能用于跨CPU核跨网络的过程调用。
1. RPC 跨核交换机模式
RPC 跨核交换机模式,此模式弥补LPC 不能支持跨CPU核调用模式,多路并发RPC(8代理,8存根)最大800W左右RPC调用性能,单路RPC 200W左右RPC调用性能,适用于混合计算密集型的IO应用,适用于多核分载计算压力,但IO性能不如LPC.
2.TCP直连模式
此模式为网络分布式环境提供RPC服务,由异数OS TCP协议栈来提供跨网络的RPC调用,最大每核400W调用性能左右。
3.TCP经纪人代理模式
经济人模式使用 织梦师-水母消息队列作为框架内核,相比TCP直连模式,优势是通过经纪人可以解耦Client Server的调用依赖,通过多消费者存根可以大大提高系统的可用性稳定性,消费者存根崩溃时并不会对生产者代理造成连带影响,劣势是,IO规模比直连模式大一倍,单broker最大RPC 调用性能在200W,具体架构原理图参见织梦师-水母消息队列。
数据来自网络,环境目标不同,选取目标产品最大性能值,成绩仅供参考。
引用的其他产品测试成绩 http://colobu.com/2018/01/31/benchmark-2018-spring-of-popular-rpc-frameworks/ https://blog.csdn.net/quuqu/article/details/79304614
测试特性纤手 5000W LPC纤手 5000W RPC跨核纤手 600W-RPC TCP直连纤手 600W RPC TCP中间人go+stdrpcthriftdubboRPC最大调用性能20M8M4M2M30W7W20W平均延迟调用性能/链接数量调用性能/链接数量调用性能/链接数量调用性能/链接数量10ms+调用性能/链接数量10ms+调用性能/链接数量10ms+调用性能/链接数量最小延迟<1us10us10us10us10ms10ms10ms