异数OS是什么?

本文来自异数OS社区

github: https://github.com/yds086/HereticOS
异数OS社区QQ群: 652455784
异数OS-织梦师(消息中间件)群: 476260389

本文写作原因

做了一些异数OS平台的产品,出去宣传总是被质疑,最终发现原因很简单,因为同类产品都是linux平台产品,因此同僚总是习惯于linux平台已有的落后经验来评估新事物,所以导致同僚的评估能力受限受阻,所以有必要写一篇文章来说明一下异数OS这个操作系统,更新一下三观,让同僚具备评估新事物的能力。

异数OS简介

异数OS是一种高性能海量并发操作系统,提供每CPU核80M每秒的线程切换能力,40M的event生成以及io能力,目前实做的TCP协议栈可达到每CPU核20M的io能力,1亿线程4G内存,并发容量相比传统操作系统提升1000倍,IO性能提升100倍。

简介意义说明

相信很多人看过简介,但是却看不懂简介,所以有必要解释下简介中的数字代表什么意义,简介中主要描述的是线程IO能力和线程的容量,不管你是要做tcp 协议栈,又或者是UDP透传,又或者是SSD磁盘读写,你都没有办法绕过一个叫做线程IO的东西,IO是什么意思呢,IO的本质是一个线程(进程)中断并等待另一个线程(进程)的能力,这中间就涉及到线程的切换能力,以及event的生成响应能力,常规情况比如linux线程性能大概13W的线程切换能力以及大概200的进程切换能力,因此你发现你在linux下写的网络程序或者SSD读写程序,都无法突破13W这个墙,本地UDP做一个进程间击鼓传花,你会发现,这朵花每秒传递不过100多次,然而cpu却只占0%,那么异数OS呢,异数OS在异数OS虚拟交换机下这朵花可以在线程间传递4000W次,按这个数值比较异数OS的IO性能就是linux线程性能的3000倍,进程间IO性能的40W倍。

另一个数据是说线程容量1亿线程4G内存是说什么呢,经常做JAVA为了提升并发容量的同学应该知道,他们在linux下一般会开个1W左右的线程池,用于跑阻塞的用户业务,比如一些订单的业务定时器等,1W线程一般就能占用4G内存了,那么跑同样的用户阻塞业务,异数OS就能跑1亿个订单,linux下的java 就只能跑1W,为了保守期间,就不说1W倍并发容量提升了,就1000倍好了。

相关测试

当然你不信任这份简介说明的话,git上有两个测试case可以随便改来分析

1.线程间击鼓传花测试

https://github.com/yds086/HereticOS/tree/master/test/Event%E5%87%BB%E9%BC%93%E4%BC%A0%E8%8A%B1

2.sleep 订单并发线程模拟,目前有C# go rust python java的对比测试代码和成绩
https://github.com/yds086/HereticOS/tree/master/test/%E5%B9%B6%E5%8F%91sleep

猜你喜欢

转载自blog.csdn.net/AthlonxpX86/article/details/79944301