2013-08-19 8 views
1
<?php 
$t1 = microtime(true); 

require("File0.inc"); // size: 7.0 kB 
include("File1.inc"); // size: 30.8 kB 
include("File2.php"); // size: 99.0 kB 
require('File3.php'); // size: 1.6 kB 

echo "{includes: ".(microtime(true) - $t1)." seconds}"; 
?> 

Это значение составляет от 0,013 секунды до 0,018 секунды.
Это действительно неэффективно для меня, мой код (после него) работает примерно за 0,0002 секунды.
Как я могу минимизировать время выполнения, включая файлы?Php включает в себя удар производительности

+0

@Joe, это будет заметно, если сразу придут 50 пользователей. – funerr

ответ

1

Включение файлов PHP требует времени, нет никакого способа обойти его.

Если время загрузки действительно является для вас большой проблемой, возможно, вам придется просто поместить весь код в один большой файл. Но это кошмар, когда дело доходит до модульности и качества кода, конечно, поэтому вам стоит подумать о том, чтобы вместо этого сделать более быстрый сервер.

Между тем, вы можете попробовать кешировать свой выход, используя memcached или APC, чтобы улучшить время загрузки.

+0

Что делать, если один из файлов это просто большой ассоциативный массив? – funerr

+0

помещает большой ассоциативный массив в хранилище значений ключа на основе mem, например memcached или redis. – ciruvan

+0

Я использовал http://il1.php.net/apc, и он сделал производительность в 4-5 раз лучше, добавьте его в ответ, чтобы другие могли его использовать (скажите им, что он автоматический). – funerr