![SMB 文件共享非常慢](https://linux22.com/image/731367/SMB%20%E6%96%87%E4%BB%B6%E5%85%B1%E4%BA%AB%E9%9D%9E%E5%B8%B8%E6%85%A2.png)
我有一个新安装并更新的 Windows Server 2016 版本,我有 4 个 4TB 磁盘,通过 SATA 连接。这些磁盘在存储池下以奇偶校验配置设置,因为我创建了一个约 10TB 的虚拟磁盘。
当 RAM 缓冲区填满后,对磁盘的写入操作速度约为 10MB/s,知道为什么吗?
谢谢
已测试:
- Iperf3——网络连接正常。
- CPU 负载 - 10% 或更低。
- 硬件故障 - 磁盘驱动器功能正常并且控制器在各个磁盘上运行良好。
图片
存储池的写入模式 关联
iPerf3 结果 关联
在以下期间写入模式当地的C: 至 O: 传输(无网络): 关联
所需信息:
- 磁盘转速/大小:7200RPM(LFF)
- 磁盘型号:WD40EFRX(西部数据:红色“NAS”驱动器)
- 存储池设置:看这里
- 什么样的服务器?定制机箱 PC 机箱,配有“华硕 P8Z77-V LE Plus”主板。
- 磁盘是如何连接到它的?12 个磁盘,其中 4 个与此文件共享相关。
补充笔记 - 之前使用 FreeNAS 11.4 时系统运行速度在 200MB/s 左右。
答案1
默认设置不适合。
优化存储空间(推荐方式)
- 使用 PowerShell 优化 MPIO:
Set-MSDSMGlobalLoadBalancePolicy -Policy LB
- 分配单元建议大小 64KB(使用 NTFS 格式化时)
- Mircosoft 建议使用 64kB 交错(相当于 raid 条带大小)http://social.technet.microsoft.com/wiki/contents/articles/15200.storage-spaces-designing-for-performance.aspx
应该使用 PowerShell 而不是 GUI 来设置交错:New-VirtualDisk -Interleave
我不建议更改 IsPowerProteced 设置或在物理磁盘上启用写入缓存。
答案2
您遇到的性能损失可能是由于 Windows 必须计算部分,并且存储池可能正在使用“写入”(等待块成功写入磁盘)。
Set-StoragePool
您可以使用带有开关的命令来禁用直写并禁用刷新操作-IsPowerProtected
。
有关此可选参数的更多信息,请参阅文档:https://docs.microsoft.com/en-us/powershell/module/storage/set-storagepool?view=win10-ps#optional-parameters
但是,如果您的服务器没有电源保护,请不要这样做。如果您没有使用电源保护磁盘控制器,并且没有使用 UPS 为服务器提供电源保护,请不要PowerProtected
在生产环境中使用该模式。如果发生电源故障或 Windows 意外停止,则很可能会导致数据丢失。
不过,您仍然可以进行测试,看看吞吐量是否更好。