use*_*595 7 google-compute-engine
我们刚刚切换到Google Compute Engine,并且在磁盘速度方面存在重大问题.它大约是Linode的5%或更糟.写入时不超过20M/s,读取时不超过10M/s.大多数情况下,写入时为15M/s,读取时为5M/s.
我们目前正在运行n1-highmem-4(4个vCPU,26 GB内存)计算机.CPU和内存不是瓶颈.只需运行一个从PostgreSQL数据库读取行的脚本,处理它们,然后写回PostgreSQL.这只是一个共同的工作,批量更新数据库行.尝试运行20个进程以利用多核,但整体进度仍然缓慢.
我们认为磁盘可能是瓶颈,因为流量异常低.
最后我们决定做基准测试.我们发现它不仅速度慢,而且似乎有一个可重复的主要错误:
运行基准至少三次:
dd if=/dev/zero bs=1024 count=5000000 of=~/5Gb.file
Run Code Online (Sandbox Code Playgroud)我们发现它变得极其缓慢,根本无法完成基准测试.
永久磁盘性能与磁盘本身及其连接的VM的大小成正比.磁盘(或VM)越大,性能越高,因此从本质上讲,您为磁盘或VM支付的价格不仅支付磁盘/ CPU/RAM,还支付IOPS和吞吐量.
引用永久磁盘文档:
永久磁盘性能取决于卷的大小和您选择的磁盘类型.较大的卷可以实现比较小的卷更高的I/O级别.没有单独的I/O费用,因为I/O功能的成本包含在永久磁盘的价格中.
持久磁盘性能可以描述如下:
- IOPS性能限制随持久磁盘卷的大小线性增长.
- 吞吐量限制也会线性增长,直到永久磁盘连接到的虚拟机的最大带宽.
- 较大的虚拟机具有比较小的虚拟机更高的带宽限制.
页面上还有一个更详细的定价图表,显示您购买的每GB空间的价格(以下数据是截至2014年8月的最新数据):
Standard disks SSD persistent disks
Price (USD/GB per month) $0.04 $0.025
Maximum Sustained IOPS
Read IOPS/GB 0.3 30
Write IOPS/GB 1.5 30
Read IOPS/volume per VM 3,000 10,000
Write IOPS/volume per VM 15,000 15,000
Maximum Sustained Throughput
Read throughput/GB (MB/s) 0.12 0.48
Write throughput/GB (MB/s) 0.09 0.48
Read throughput/volume per VM (MB/s) 180 240
Write throughput/volume per VM (MB/s) 120 240
Run Code Online (Sandbox Code Playgroud)
以及磁盘特定大小将为您提供的页面上的具体示例:
作为如何使用性能图表来确定所需磁盘卷的示例,请考虑500GB标准永久磁盘将为您提供:
- (0.3 x 500)= 150个小随机读数
- (1.5 x 500)= 750次小型随机写入
- (0.12 x 500)= 60 MB/s的大型顺序读取
- (0.09 x 500)= 45 MB/s的大型顺序写入
| 归档时间: |
|
| 查看次数: |
3466 次 |
| 最近记录: |