Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Кеш - примеры использования

00 голосов
3
Согласно руководства:
Результат работы редко обновляемых, часто посещаемых или ресурсоемких мест на сайте выгоднее сохранять один раз в какой-то период времени чем исполнять каждый раз.

Пример использования

<?
$cache = new CPageCache;
if($cache->StartDataCache(30*60, "my_block".LANG.$param1.$param2))
{
//начало html тэги
????
// конец
$cache->EndDataCache();
}
?>

1. Приведите пожалуйста короткий реальный пример использования

2. Прокомментируйте пожалуйста рекомендуемые величины кеша указываемого в компонентах, там, где ноль означает отсутствие кеша.

Спасибо.
спросил 25 Май, 13 от Brunya (120 баллов)

3 Ответы

00 голосов
Код
<?$cache = new CPageCache; if($cache->StartDataCache(15*60, "news")):

$items = GetIBlockElementListEx("news",
     15,
     Array(),
     Array("ID"=>"DESC"),
     12,
     Array("SECTION_ID"=>42),
     Array("ID", "NAME", "ACTIVE_FROM", "SORT", "PREVIEW_TEXT")
);

while($arItem = $items->GetNext()):?>

<a href="<?=$arItem["ID"]?>.html"><?=$arItem["NAME"]?></a><br>
<small><?=$arItem["PREVIEW_TEXT"]?></small><p>

<?endwhile?>

<?$cache->EndDataCache();endif;?>

ответил 25 Май, 13 от ZOOL (260 баллов)
00 голосов
Цитата
contracept пишет:
1. Приведите пожалуйста короткий реальный пример использования


В качестве примера можно привести любой из сайтов Компьютерры:

http://www.computerra.ru/

Число элементов инфоблоков превышает 100 тысяч. Главная страницы содержит выборки сложной составляющей, каждый из запросов достаточно сложен, чтобы его можно было позволить себе выполнять раз для каждого из 50 тысяч посетителей. И как результат, главная страница проекта кэшируется в целом ряде независимых областей с разным временем кэширования.

Кстати, обратите внимание на постраничку внизу списков.

Page136.html
Page135.html
....

Это пример так называемой обратной постранички, когда каждая страница не меняет свой состав контента (что удобно для поисковиков), может быть кэширована на долгое время.

Цитата
contracept пишет:
2. Прокомментируйте пожалуйста рекомендуемые величины кеша указываемого в компонентах, там, где ноль означает отсутствие кеша.


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

Подробнее об использование технологии кэширования читайте в разделе документации для разработчика:

http://www.bitrixsoft.ru/help/source/main/help/ru/developer/general/technology/cache.php.html
ответил 26 Май, 13 от oriona (180 баллов)
00 голосов
Цитата
Sergey Rizhikov пишет:
Кстати, обратите внимание на постраничку внизу списков.

Page136.htmlPage135.html....

Это пример так называемой обратной постранички, когда каждая страница не меняет свой состав контента (что удобно для поисковиков), может быть кэширована на долгое время.


а как это делается? через rewrite_mod ?
ответил 20 Авг, 13 от Kania (5,180 баллов)

Похожие вопросы

0 голосов
1 ответ
спросил 21 Фев, 14 от root (25,590 баллов)
0 голосов
2 ответов
0 голосов
2 ответов
0 голосов
9 ответов
спросил 09 Фев, 13 от Kania (5,180 баллов)