OpenBSD,FreeBSD,Linux硬盤速度對比

測試基於虛擬機,不保證在真機上的真實準確性,真實服務器只能比這個快,僅供參考而已,年前封箱文。

環境:
VirtualBox 4.1.8
Intel i3 2100 3.1GHz 4核
分配虛擬機2核,1024M內存
硬盤是ST500D ATA Device

OpenBSD 5.0 with FFS
FreeBSD 9.0 with UFS2
Ubuntu 11.10 server with EXT4
CentOS 5.7 with EXT4

測試命令:

寫入1G文件
time dd if=/dev/zero of=/tmp/1GB bs=4096 count=250000

讀取1G文件
time dd if=/tmp/1GB of=/dev/null bs=4096 count=250000

同時讀寫
time dd if=/tmp/1GB of=/tmp/1GB.a bs=4096 count=250000

紅色爲最快,綠色爲最慢。


FFSreadwriteread&write
default6.63s14.24s26.81s
async6.56s13.81s27.77s
softdep noatime6.57s13.77s27.83s
UFS2
default2.97s15.23s16.28s
async3.07s13.11s15.28s
EXT4
ubuntu 113.94s4.40s6.25s
centos 64.61s5.74s7.07s


OpenBSD和FreeBSD爲了保證其數據的掉電安全性,包攬全部項目最慢桂冠。不過其基於同步IO的操作,數據可靠性是有相當保證的。

在OpenBSD中,比較意外的是async和noatime,softdep的方式,async爲BSD系統強烈不推薦的方式,認爲其異步方式會造成數據掉電丟失,但是,從測試上看,OpenBSD的異步和softdep方式,並沒有比同步方式強多少。儘管在OpenBSD內的比較重,async方式沒有拿到最慢獎,但速度也只是零點幾秒的差異。而同時讀寫的速度是慢的比較離譜,所以,OpenBSD確實不適合做應用服務器使用,更適合當個路由器或者防火牆。

FreeBSD的UFS2比較令我意外,居然是讀取速度最快的,但是寫入速度卻是所有操作系統裏最慢的。所以,FreeBSD可以考慮做歷史數據存儲備份使用。或者做讀操作密集型應用的服務器。

作爲Linux最新推出的EXT4,確實在讀寫速度上讓人一亮。特別是ubuntu,包攬寫入和同步讀寫兩個冠軍,實在令人刮目相看。相比之下,CentOS6的速度就比較平庸了。而且在3項對比上,ubuntu幾乎所有項目都比centos快了1秒,在服務器應用上這已經是很大的差距了,對於Linux系統就不用要求數據的掉電安全性了。至於爲什麼,去找ext4原理看看就知道了。不要小看1秒的差距,最終這是個累計誤差的問題,1G誤差1秒,60G就是1分鐘,3.6T的數據就是1小時了。如果搞海量分析,還是選ubuntu或者FreeBSD比較好。

所以,竊以爲,OpenBSD的FFS比較適合做網關,路由,防火牆,你要拿他來做mysql,webserver,那就等死吧,雖然安全,但是性能實在是差了許多。

FreeBSD適合做存儲或者讀取密集型的應用服務器,比如webserver或者專供select的mysql slave服務器。

ubuntu/debian,適合寫入密集型或者讀寫密集型的應用,典型的就是mysql master或者基於web的文件服務器。
至於centos麼,如果你決定用Linux,還是把它扔了吧。

由於公司網絡對於下載的限制,本次沒有時間測試SuSE,不過,我猜測,SuSE的性能會優於CentOS,否則騰訊就不會用SuSE當開放平臺的服務器了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章