文件系統(File System)地獄測試

做php的caching 時會留意到,到底文件系統(File system) 的查找速度會如何.

今次特意做了個三層文件系統的傳取測試:

系統環境:
CPU: INTEL E6320
RAM: 2GB
Apache 2.23 ,php 4.4.4 ,zend 1.5

測試設置:
用md5制做檔案名,
for 1000次做10000個187KB文件(TOTAL 1.78GB)

分別分三個模式儲存:
用MD5文檔名

  1. ./{0~2}/MD5(i).php
  2. ./{0~2}/{2~4}/MD5(i).php
  3. ./{0~2}/{2~4}/{4~6}/MD5(i).php

然後分別做隨機抽取文件做效能測試:

以300次平均時間來計算

  1. 0.045秒
  2. 0.035秒
  3. 0.0475秒

2 > 1 > 3 .

結論:

二層分階像在10000 個文件比較有優勢,效率最高,但暫時人無力做十萬個文件的湔試;

本次測試的文件: FileSystem_test.zip