家里组 10GbE 网络,是我最近的一次“为了快而快”的折腾。我大概不需要它,但我想要,而且一定要装。第一台 10GbE 设备不是电脑,而是一台网管交换机;随后入手的 Synology DS1621xs+ 也标配 10GbE,这在群晖产品里很少见。当时我脑子里已经出现画面:NAS 备份以每秒 1GB 的速度狂奔。 按理论算,虚拟机迁移和备份速度可以达到 1,250 MB/s。可实测是多少?230 MB/s。问题不在网络。我掉进了一个典型的 10GbE 误区:以为换上 10GbE 交换机,所有挂在网络上的设备都会变快。真正拖后腿的,是两块硬盘伪装成的“存储阵列”。 RAID 1 是速度瓶颈的一部分,镜像不会让读取速度翻倍。 当时我的阵列是两块 20TB 硬盘组成的 SHR(相当于 RAID 1),为了冗余这看起来很合理。我没有用更多小容量硬盘扩容,而是选择这种方案,因为以后可以一块一块升级;但代价是,每次写入都要同时发给两块盘,导致最高传输速度大约只有 290 MB/s。这仅仅是 10GbE 链路理论带宽的 20% 左右。 我原本以为读取会快一些,毕竟有两份数据,应该有两块盘同时供数。但 Synology 底层是 Linux,内核开发者二十年前就说得很明白:单线程顺序读只能从一个镜像成员读取。读均衡只会在多个客户端同时从 NAS 取数据时才有意义;一个人拷贝大文件,只有一块盘在工作。 为了验证,我做了测试:通过 SSH 直接 I/O 读取 64GB 数据,绕过缓存和网络开销。结果 Synology 持续写入 259 MB/s,持续读取 274 MB/s。这还是发生在几乎空盘、容量利用率只有 6% 的情况下,而且用的是磁盘外圈最快区域。也就是说,这套阵列以后只会更慢。 结论很简单:10GbE 只负责把管道加粗,真正决定速度的是管道末端。如果你还在用一两块机械硬盘,先把存储阵列换成 SSD 或多盘条带化,再考虑升级万兆网络,否则你测出来的可能还是 274 MB/s。
![]()
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.