Erlang ETS/DETS性能評測

目的

Erlang自帶了名爲ETS(Erlang Term Storage)的純RAM存儲系統,以及名爲DETS(Disk-based Erlang Term Storage)的RAM/Disk混合存儲系統。爲了評價ETS/DETS的性能並和Memcached進行比較,需要進行本測試。

 

測試環境

公司配發的筆記本,Intel Duo 1.8GHz(雙核),1GB RAM,60G SATA HD,Linux kernel 2.6.24(Ubuntu 8.04 Hardy)。


Erlang OTP/R12B4,使用自帶的ETS/DETS模塊。


Memcached 1.2.2,使用libmemcached 0.22作爲客戶端。

 

測試用例

循環插入100w次簡單鍵值對,鍵值均爲32-bit整數循環變量值,因此每個鍵值對的有效大小爲(4+4)=8個byte。

 

測試結果

Erlang ETS

運行時間1.914s,QPS 522466.04

 

Erlang DETS

運行時間45.603s,QPS 21928.38

 

Memcached

運行時間54.22s,QPS 18443.3

 

初步結論

在測試使用的場景下,可以看出Erlang ETS的性能遙遙領先,這應該是因爲ETS存儲資源都在單個OS進程內,無須額外協議進行交互所致;Erlang DETS和Memcached的性能基本一致。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章