11. Січень 2012 · Коментарі Вимкнено до кешування шляхів у kohana (routes caching) · Categories: kohana, PHP-програмування, Веб-програмування, Створення сайтів · Tags: , , ,

сьогодні нічого уже писати не хотів, проте згадав ще одну корисну річ – кешування шляхів у фреймворка kohana. мабуть, кожен, хто вмикав собі на локальному сервері профайлинг, бачив подібну штуку:

профайлинг у kohana - find_file (пошук файлів)

профайлинг у kohana - find_file (пошук файлів)

це дані про те, як так званий autoloader шукає ваші файли проекту, які ви використовуєте, та завантажує. мабуть, кожен помічав, що чим більше цих файлів, тим більше часу потрібно для їх пошуку, а коли врахувати, що відвідувачі переглянуть, скажімо, 1000 сторінок, то навіть у моєму випадку (щоправда, на ноутбуці) – це би зайняло 50 секунд процесорного часу! неприємно, та й навіщо це робити купу разів? а коли файлів 200? на сервері, звісно, цей час куди менший, може, навіть у 5-10 разів, але теж недобре. а коли відвідувачі проглянуть 10000 сторінок – це те щонайменше хвилина-півтори роботи серверного процесора лише на генерування шляхів! щоб уникати таких штук та не робити непотрібні речі, в kohana передбачено також кешування шляхів. для цього потрібно небагато:

Kohana::modules(array(
 ...
 'cache'      => MODPATH.'cache',      // Caching with multiple backends
 'database'   => MODPATH.'database',   // Database access
 ...
 ));

просто включаєте в цьому блоці модуль cache, прибравши перед рядком два слеші, а потім робите таке:

Kohana::init(array(
 ...
 'caching' => TRUE,
 'cache_life' => 60,
 ...
));

тобто включаєте саме кешування та вказуєте, на який час кешувати ці шляхи (роути чи рути – як кому краще). після цього у вас в папці з кешем з’явиться файл, де будуть перераховані усі файли, необхідні для генерування сторінки. отак усе просто :)

Comments closed.