将磁盘添加到 Azure VM 时,"Host Cache Preference"设置有何区别?



将 VHD 数据磁盘添加到 VM 时,系统会要求我输入"主机缓存首选项"(无、只读、读/写)。

有人可以告诉我选择一个而不是另一个的效果吗?

具体来说,我使用 VM 作为生成服务器,因此磁盘用于编译 .Net 源代码。在这种情况下,哪种设置最好?

正如设置中提到的,此设置会打开 I/O 的缓存首选项。 更改它们的效果是,可以缓存读取、写入或同时读取/写入以提高性能。 例如,如果您有只读数据库/Lucene 索引/只读文件,则最好为驱动器打开读缓存。

在驱动器上更改此设置(直到我使用 SQL Server/Lucene)时,我没有看到显着的性能变化。 高 I/O 将通过剥离磁盘得到改善...在您的情况下,如果您在 10,000 个文件中有数百万行代码,那么您可以看到读取/写入的性能改进。 单个驱动器的默认最大 IOPS 为 500 IOPS(大约是 2x15k SAS 驱动器或高端 SSD)。 如果您需要更多,请添加更多磁盘并对其进行条带化...

例如,在超大型 VM 上,可以附加 16 个驱动器 * 500 IOPS(~8,000 IOPS):http://msdn.microsoft.com/en-us/library/windowsazure/dn197896.aspx(有一些很好的文章/白皮书,供那些这样做的人通过添加最大数量的较小驱动器来获得最佳性能。而不仅仅是一个巨大的)。

简短摘要:保留缓存的默认值。 使用 I/O 工具测试特定性能。 单驱动器性能可能无关紧要,如果 I/O 是瓶颈,条带化驱动器将比 VHD 驱动器上的缓存设置好得多。

相关内容

  • 没有找到相关文章

最新更新