异数OS 织梦师-纤手(二)-- LPC RPC篇
异数OS 织梦师-纤手(二)– LPC RPC篇
本文来自异数OS社区
github: https://github.com/yds086/HereticOS
异数OS社区QQ群: 652455784
异数OS-织梦师(消息中间件 RPC技术)群: 476260389
织梦师-纤手 LPC RPC简介
纤手主要用于异数OS 之上性能级应用系统设计,他并不支持序列化等需要CPU密集型功能,因此他也不支持其他非C++语言平台,要求CPU同构(大端,小端),相比传统RPC 技术,提供10-100倍的调用性能提升,多样化的方案选择也使他可以面向不同性能级应用场合,方案原型都是最小化轻量级,开发者可以改造定义自己的RPC平台。
与众不同的特性
- 简单靠谱的框架,使用阻塞线程模型,因此并发设计更加简单实用,不需要考虑异步并发带来的算法复杂度以及错误处理等问题。
- 海量并发调用特性,由于异数OS的线程开销很低,1亿线程仅需4G内存,因此可以更加随意的使用LPC RPC技术,而不需要考虑其成本代价,传统LPC RPC技术往往被宿主平台的CPU数量线程数量等限制,而只能选择集群扩充并发RPC容量,RPC并发容量保守测试提升1000倍。
- 10-100倍 LPC RPC调用性能。
LPC 方案说明
LPC主要用于相同CPU核内线程的过程调用,依赖异数OS 本地event组件,实现本地CPU核线程间快速调用,相比RPC,拥有最快的过程调用性能(IO密集型),每CPU核最大20M左右线程间调用性能,不能用于跨CPU核跨网络的过程调用。
RPC方案说明
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,具体架构原理图参见织梦师-水母消息队列。
相关RPC产品性能对比
数据来自网络,环境目标不同,选取目标产品最大性能值,成绩仅供参考。
引用的其他产品测试成绩
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+stdrpc | thrift | dubbo |
|---|---|---|---|---|---|---|---|
| RPC最大调用性能 | 20M | 8M | 4M | 2M | 30W | 7W | 20W |
| 平均延迟 | 调用性能/链接数量 | 调用性能/链接数量 | 调用性能/链接数量 | 调用性能/链接数量 | 10ms+调用性能/链接数量 | 10ms+调用性能/链接数量 | 10ms+调用性能/链接数量 |
| 最小延迟 | <1us | 10us | 10us | 10us | 10ms | 10ms | 10ms |
异数OS 织梦师-纤手(二)-- LPC RPC篇的更多相关文章
- 异数OS 织梦师-云(五)-- 容器服务化,绿色拯救未来。
. 异数OS 织梦师-云(五)– 容器服务化,绿色拯救未来. 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652 ...
- 异数OS 织梦师-水桶(三)-- RAM共享存储方案
. 异数OS 织梦师-水桶(三)– RAM共享存储方案 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455 ...
- 异数OS 织梦师-Xnign(四)-- 挑战100倍速Nginx,脚踩F5硬件负载均衡
. 异数OS 织梦师-Xnign(四)– 挑战100倍速Nginx,脚踩F5硬件负载均衡 本文来自异数OS社区 github: https://github.com/yds086/HereticOS ...
- 异数OS 织梦师-水母(一)--消息队列篇
异数OS 织梦师-水母(一)–消息队列篇 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455784 异数O ...
- 异数OS TCP协议栈测试(二)--短连接篇
异数OS TCP协议栈测试(二)--短连接篇 本文来自异数OS社区 github: 异数OS-织梦师(消息中间件)群: 476260389 测试目标 TCP 短链接IO性能测试,Client Se ...
- 异数OS TCP协议栈测试(一)--数据传输篇
异数OS TCP协议栈测试(一)--数据传输篇 本文来自异数OS社区 github: 异数OS-织梦师(消息中间件)群: 476260389 测试目标 数据传输IO性能测试,主要是建立连接后测试收 ...
- 异数OS国产CPU平台移植项目需求分析
异数OS国产CPU平台移植项目需求分析 目录 异数OS国产CPU平台移植项目需求分析 项目立项背景 项目需求分析 异数OS性能指标简介 1.TCP协议栈性能测试 2.异数OS-织梦师-水母 消息队列性 ...
- 异数OS-星星之火(二)--远程实验室注册开放
异数OS-星星之火(二) 远程实验室注册开放 异数os-织梦师云 未来操作系统技术远程实验室预计9月中旬开放,提供异数os用户学习研究测试服务,目前在做容器化多租户环境改造,先开放会员预注册通道,有需 ...
- 异数OS 星星之火(三)--异数OS-织梦师云 微服务编写入门
. 异数OS 星星之火(三)–异数OS-织梦师云 微服务编写入门 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 6 ...
随机推荐
- linux 系统挂起
尽管内核代码的大部分 bug 以 oops 消息结束, 有时候它们可能完全挂起系统. 如果系 统挂起, 没有消息打印. 例如, 如果代码进入一个无限循环, 内核停止调度,[15]15 并且系 统不会响 ...
- linux 内核协助的探测
Linux 内核提供了一个低级设施来探测中断号. 它只为非共享中断, 但是大部分能够在共 享中断状态工作的硬件提供了更好的方法来尽量发现配置的中断号.这个设施包括 2 个函 数, 在<linux ...
- linux 重用 short 为 I/O 内存
short 例子模块, 在存取 I/O 端口前介绍的, 也能用来存取 I/O 内存. 为此, 你必须告 诉它使用 I/O 内存在加载时; 还有, 你需要改变基地址来使它指向你的 I/O 区. 例如, ...
- 【t081】序列长度(贪心做法)
Time Limit: 1 second Memory Limit: 128 MB [问题描述] 有一个整数序列,我们不知道她的长度是多少(即序列中整数的个数),但我们知道在某些区间中至少有多少个整数 ...
- eslint 错误提示
“Missing semicolon.” : “缺少分号.”, “Use the function form of \”use strict\”.” : “使用标准化定义function.”, “Un ...
- TOJ4587:抓苹果(DP)
传送门:抓苹果 dp(i,j) = max(dp(i-1,j-1),dp(i-1,j))+当i这分钟时能否刚好移动到这棵树下. 初始化是对不移动的情况下. 代码 #include<bits/st ...
- vue 实例未加载完成显示 花括号解决方案
css [v - cloak] { display: none!important; } html < div id = "app" v-cloak >
- switch多值匹配骚操作,带你涨姿势!
我们都知道 switch 用来走流程分支,大多情况下用来匹配单个值,如下面的例子所示: /** * @from 微信公众号:Java技术栈 * @author 栈长 */ private static ...
- 【转载】实现a元素href URL链接自动刷新或新窗口打开
又是我偶像的新文,这个小技巧的用户体验真的非常非常棒! 文章转载自 张鑫旭-鑫空间-鑫生活 http://www.zhangxinxu.com/ 原文链接:https://www.zhangxinxu ...
- 【题解】P4841 城市规划(指数型母函数+多项式Ln)
[题解]P4841 城市规划 P4841 城市规划 超级弱化版本(DP):POJ - 1737 两张图不同当且仅当边的分布不一样的时候,带编号最后乘一个阶乘即可,现在最主要的问题就是"联通& ...