加载中...

系统设计需要理解的延迟数量级

1ns=10^{-9}s
1ms=10^(-6)s
1ms=10^(-3)s

1ns范围:包括访问cpu寄存器速度,现在cpu的时钟周期
1-10ns:包括 l1和l2缓存访问 一些昂贵的cpu操作如分支错误预测惩罚
10-100ns:l3缓存 现代cpu的主内存访问
100-1000ns:linux系统调用(陷入内核并且直接返回的直接成本),对64位数字进行md5加密
1-10us:linux线程之间的上下文切换(最好的情况)
10-100us:像nginx网络代理用50us处理典型http请求。从主存顺序读取1MB数据大约需要50us。SSD读取8K需要的时间
100-1000us:SSD写入延迟大约比读取延迟慢10倍(在这个范围内)。redis的读取的1ms。
1-10ms:现代云的区域间网络往返都在范围内。磁盘驱动器的寻道。
10-100ms:(跨大陆的)网络往返,主存中读取1GB的也是如此。
100-1000ms:用来慢速哈希函数的加密。TLS握手。SSD顺序读取1GB
1s:在同一云区域内通过网络传输1GB大约需要10s

https://www.bilibili.com/video/BV1jwHhebE8o/

posted @ 2024-09-12 14:55  liang302  阅读(46)  评论(0编辑  收藏  举报