mmap performance of Amazon EBS



我正在考虑将应用程序移植到云中,更具体地说,我正在研究Amazon EC2或Google GCE。

我的应用程序大量使用 Linux 的 mmap 来内存映射大型只读文件,我想了解当文件位于 EBS 卷上时mmap实际工作方式。

我特别想知道当我打电话给mmap时会发生什么,因为EBS似乎是一个黑匣子。另外,好处是否被否定了?

我可以代表GCE永久磁盘。它的行为方式与物理磁盘几乎相同。在高级别上,当访问映射内存时,页面会从磁盘出错。根据您的访问模式,这些页面可能会一个接一个地加载,或者在预读启动时加载更多。当文件系统缓存填满时,旧页面将被丢弃,以便为新页面提供空间,并在需要时写出脏页面。

使用永久磁盘时要记住的一件事是性能与磁盘大小成正比。因此,您需要估计吞吐量和 IOPS 要求,以确保获得具有足够性能的磁盘,以满足您的应用程序。您可以在此处找到更多详细信息:永久磁盘性能。

您是否担心 mmap 的任何方面?我建议在决定迁移应用程序之前编写一个模拟工作负载的小应用程序并对其进行测试。

~ 法布里西奥。

最新更新