Компоненты: Комплексное решение АБИС ИРБИС64/128 Завершено: 26.03.2026 15:02
Реализован полноценный паттерн Singleton с защитой от клонирования и десериализации.
Добавлена поддержка двухуровневого кеширования:
L1: Статический массив в памяти процесса для минимизации обращений к APCu/SQLite.
L2: APCu (Shared Memory) или фолбэк на SQLite3, если APCu недоступен.
Реализован механизм фолбэка на SQLite3:
Автоматическое создание базы данных и таблиц в директории Data.
Поддержка WAL-режима для производительности.
** Механизм вероятностной очистки устаревших записей.
Добавлена поддержка PSR-16 подобных интерфейсов:
** Методы getMultiple, setMultiple, deleteMultiple для пакетных операций.
Поддержка DateInterval для задания TTL.
Введены защитные механизмы:
Ограничение MAXL1ITEMS (5000 элементов) для предотвращения утечек памяти (OOM).
Безопасное FIFOвытеснение элементов из L1кеша.
Улучшена диагностика:
Добавлен метод getStats() для получения статистики APCu и SQLite.
Добавлено логирование ошибок через модуль Log.
Код документирован в формате PHPDoc.
-
Реализован полноценный паттерн Singleton с защитой от клонирования и десериализации.
Добавлена поддержка двухуровневого кеширования:
L1: Статический массив в памяти процесса для минимизации обращений к APCu/SQLite.
L2: APCu (Shared Memory) или фолбэк на SQLite3, если APCu недоступен.
Реализован механизм фолбэка на SQLite3:
Автоматическое создание базы данных и таблиц в директории Data.
Поддержка WAL-режима для производительности.
Механизм вероятностной очистки устаревших записей.