НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
101 of 182 menu

Таблица cache_locales

Таблица cache_locales является частью системы кеширования Drupal и предназначена для хранения предварительно обработанных данных переводов интерфейса. Это значительно повышает производительность системы, особенно на многоязычных сайтах.

Поля

Поле Тип данных Описание
cid varchar(255) Уникальный идентификатор кеш-записи. Обычно содержит комбинацию языка и контекста перевода.
data longblob Сериализованные данные перевода, хранящиеся в бинарном формате. Содержит массив переводов для конкретного языка и контекста.
expire int Время истечения срока действия кеш-записи в формате Unix timestamp. Значение 0 означает, что запись не имеет срока годности.
created int Время создания кеш-записи в формате Unix timestamp.
serialized smallint Флаг, указывающий на то, что данные были сериализованы перед сохранением. Значение 1 означает сериализованные данные, 0 - нет.

Как это работает

Когда Drupal需要 перевести строку интерфейса, он сначала проверяет наличие перевода в кеше cache_locales. Если перевод найден и срок его действия не истек, система использует его без обращения к основной таблице переводов locales_source.

Кеш создается при первом запросе перевода для конкретного языка и контекста. Все последующие запросы используют уже закешированные данные, что значительно снижает нагрузку на базу данных.

При изменении переводов через административный интерфейс или импорт новых переводов, соответствующие кеш-записи автоматически очищаются (инвалидируются), чтобы обеспечить актуальность данных.

Таблица использует механизм кеширования Drupal, который может быть настроен для использования различных бэкендов (база данных, Memcache, Redis и др.), хотя по умолчанию используется база данных.

Пример SQL-запроса

Посмотреть все активные кеш-записи для русского языка:

SELECT cid, created, expire FROM cache_locales WHERE cid LIKE 'ru%' AND (expire = 0 OR expire > UNIX_TIMESTAMP()) ORDER BY created DESC;

Смотрите также

  • таблицу locales_source,
    которая хранит исходные строки для перевода
  • таблицу locales_target,
    которая содержит готовые переводы строк
  • таблицу cache_bootstrap,
    которая хранит кеш начальной загрузки системы
  • таблицу cache_data,
    которая используется для общего кеширования данных
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить