Strict Standards: Resource ID#18 used as offset, casting to integer (18) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#23 used as offset, casting to integer (23) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#25 used as offset, casting to integer (25) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#26 used as offset, casting to integer (26) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Кэширование
ТвойWeb ТвойWeb
Качественный Европейский хостинг
Форум для чайников
 Чат на форуме      Помощь      Поиск      Пользователи


 Страниц (1): [1]   

> Без описания
WScout
Отправлено: 09 Ноября, 2009 - 12:28:18
Post Id


Newbie


Покинул форум
Сообщений всего: 10
Дата рег-ции: Окт. 2009  

Карма 0




Такой вопрос. Стоит ли кэшировать запрос require_once, который и так интерпретируется один раз за всю работу скрипта? И что, если в файле, который проходит через require_once содержит в себе запрос к базе, будет ли он обрабатываться при повторном проходе?
 
 Top
Furax
Отправлено: 09 Ноября, 2009 - 22:46:33
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




require_once() выполняется один раз за одно обращение к скрипту. Если Ты кэшанёшь его содержимое в файл, этот файл всё равно придётся читать при каждой загрузке страницы, так что, честно говоря, не представляю, что тут можно выгадать с помощью кэширования. Единственное - это если сам requirуемый файл содержит какой-то громоздкий алгоритм, который даёт всегда один и тот же результат - в этом случае, разумеется, этот результат лучше вычислять лишь однажды.

Если ранее файл уже подключался вызовом require_once, то попытка заново подключить его той же функцией не даст ничего: файл не будет снова проинтерпретирован; соответственно, его HTML-содержимое попадёт в выходной поток только один раз (при первом подключении), равно как и PHP-код (в том числе - и работающий с базами данных) будет выполнен лишь однажды за вызов скрипта.
 
 Top
WScout
Отправлено: 12 Ноября, 2009 - 15:30:18
Post Id


Newbie


Покинул форум
Сообщений всего: 10
Дата рег-ции: Окт. 2009  

Карма 0




Тогда получается, что можно не заморачиваться ни с каким кэшированием, просто цеплять нужные запросы через require_once и все? В чем тогда прелесть кэширования, просто сохранять html код, чтоб потом его снова не генерировать?
 
 Top
Furax
Отправлено: 12 Ноября, 2009 - 22:53:31
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




WScout
В том, что кэшируются, как правило, страницы целиком, и затем в течение, скажем, десяти минут вместо выполнения кучи скриптов выполняется лишь один require_once - подключающий уже чистый HTML. Такие операции, как парсинг bb-тегов, сложные извлечения из базы данных и т. п. нет необходимости выполнять каждый раз, хотя всё зависит от загрузки проекта...
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0, скрытых: 0)
« PHP/Perl »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.
 



Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0452]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33