我们对于IO的理解必须是建立在对各种硬件资源调用延迟的认识基础上的,不同的延迟和使用场景造就了不同的架构。
时间单位:
1分(m)=60秒(s)
1毫秒(ms)=10^(-3)秒(s)
1微秒(μs)=10^(-6)秒(s)
1纳秒(ns)=10^(-9)秒(s)
1皮秒(ps)=10^(-12)秒(s)
1个CPU周期 0.3ns
L1 cache 0.9ns
L2 cache 2.8ns
L3 cache 12.9ns
mem(cpu访问DRAM) 120ns
SSD 50-150μs
机械磁盘寻道 1-10ms
机械磁盘读取1MB 60-150ms
互联网: 旧金山到纽约 40ms
互联网:旧金山到英国 81ms
互联网:旧金山到澳大利亚 183ms
TCP包重传 1-3s
OS虚拟机重启 4s
SCSI命令超时 30s
硬件虚拟化系统重启 40s
物理系统重启 5m