Linux
磁碟寫入速度遠低於讀取速度
我有一個執行 CentOS 的 VPS 伺服器(WiredTree)。
在遇到一些性能問題後,我使用以下腳本創建了一個簡單的磁碟讀/寫速度基準測試:
echo Write to disk dd if=/dev/zero of=test1 bs=1048576 count=2048 echo Read from disk dd if=test1 of=/dev/null bs=1048576
這是一個範例輸出:
[bizwayz@host perf]./benchmark Write to disk 2048+0 records in 2048+0 records out 2147483648 bytes (2.1 GB) copied, 11.2601 seconds, 191 MB/s Read from disk 2048+0 records in 2048+0 records out 2147483648 bytes (2.1 GB) copied, 0.789302 seconds, 2.7 GB/s [bizwayz@host perf]./benchmark Write to disk 2048+0 records in 2048+0 records out 2147483648 bytes (2.1 GB) copied, 3.69129 seconds, 582 MB/s Read from disk 2048+0 records in 2048+0 records out 2147483648 bytes (2.1 GB) copied, 0.789897 seconds, 2.7 GB/s [bizwayz@host perf]./benchmark Write to disk 2048+0 records in 2048+0 records out 2147483648 bytes (2.1 GB) copied, 9.56615 seconds, 224 MB/s Read from disk 2048+0 records in 2048+0 records out 2147483648 bytes (2.1 GB) copied, 0.882664 seconds, 2.4 GB/s [bizwayz@host perf]./benchmark Write to disk 2048+0 records in 2048+0 records out 2147483648 bytes (2.1 GB) copied, 3.52512 seconds, 609 MB/s Read from disk 2048+0 records in 2048+0 records out 2147483648 bytes (2.1 GB) copied, 0.784007 seconds, 2.7 GB/s
我的問題是寫入速度比讀取慢得多是否正常。
您正在執行 VPS 伺服器。這意味著您的物理機器上還有其他客戶端,它們使用磁碟的方式會影響您查看讀寫性能的方式。
通常在 RAID10 上,您將擁有大約 1/2 的寫入速率作為讀取速率。但是,由於有很多未知變數,可能會有另一個客戶端對磁碟進行大量寫入,這就是您看到寫入速度更差的原因。
與他們一起開票不會有什麼壞處,但是使用 VPS,這就是您通常會看到的。VPS 是為了方便和價值,而不是為了性能。
編輯:可以肯定的是,記憶體在這裡是一個問題,但我的觀點仍然適用。
請務必使用 fdatasync 命令執行 dd 命令,以確保它實際上將文件數據刷新到磁碟,而不僅僅是核心預設執行的記憶體。IE:
dd bs=1M count=512 if=/dev/zero of=test conv=fdatasync