Ответы пользователя по тегу Кэширование
  • Статьи про кэширование в PHP

    Gibbzy
    @Gibbzy
    ну там несколько вообщем то своств у этого кэширования
    куда скэшировать
    -В файлики
    -В память
    -В базу данных (бывает и такое)
    -Куда то еще (есть такие выдумки огоогоо)

    Что скэшировать
    — Результаты выполнения запросов (Что то в моделях)
    — Готовый html (Прям вместе с запросами с явскриптом и со всем всем всем)
    — Вообще кэшировать можно все что угодно любой объект который поддается сериализации

    Остается только разобратся в каких случаях какую комбинацию стоит применять.

    Механизм кэширования достаточно простой. Неважно какой у нас dataSource у нас есть интерфейс к любому мы его и используем (Так реализованно в Zend_Cache)

    есть ключ есть значение, теги и время жизни кэша
    К каждой паре ключ — значение мы можем присвоить тег и определенное время жизни
    Теги нужны например чтобы по ним чистить кэш. (Опять же так реазизованно в Zend_Cache)

    алгоритм простой:
    Смотрим по ключу есть ли такое значение в кэше если есть получаем его, если нет получаем откуда то еще и засовываем в кэш.

    Ключ можно составлять по разным принципам начиная от id какого ли бо объекта или id + еще id + еще id
    или вообще можно использовать хэш от sql запроса.

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

    Вообщем такие вот дела, ничего сложного, удачи!
    Ответ написан
    Комментировать