Я загружаю XML-файлы с диска с помощью file_get_contents, и в качестве теста я могу загрузить 156K-файл, используя file_get_contents()
1000 раз за 3,99 секунды.Я разделил на части часть, которая выполняет загрузку, и заменил ее слоем memcache, и на моем компьютере разработчика я могу выполнить 1000 загрузок одного и того же документа за 4,54 секунды.
Я ценю, что file_get_contents () будетсделать некоторое кэширование, но похоже, что это на самом деле быстрее, чем хорошо известная техника кэширования.На одном сервере производительность file_get_contents()
настолько высока, насколько это возможно?
Я на PHP 5.2.17 через Macports, OS X 10.6.8.
Редактировать:Я обнаружил в XML-документах такого размера небольшую выгоду от использования флага MEMCACHE_COMPRESSED
.1500 загрузок через memcache выполняются за 6,44 с (со сжатием), а не 6,74 (без).Однако оба они медленнее, чем file_get_contents
, который выполняет одинаковое количество загрузок за 5,71 сек.