161 слов | 1 минута

Сравнение Redis, Memcached и файлового кэша в 1С-Битрикс

Результаты нагрузочного тестирования трёх типов кэша на демо-магазине Битрикс: сравнение среднего времени ответа и количества запросов в секунду.

Условия теста

  • Ubuntu 22.04
  • PHP 8.2 (FPM)
  • Nginx
  • MariaDB 10.6
  • SSD NVMe
  • 8 ГБ RAM
  • Тестовый сайт: демо-магазин Битрикс
  • Нагрузочный инструмент: wrk -t4 -c50 -d30s

Результаты теста

Тип кэша Среднее время (мс) RPS (req/sec) Комментарий
Файловый (SSD) 41.6 240 Очень стабильно
Redis (без AOF) 36.8 270 Быстрее на ~12%
Redis (с AOF) 39.2 255 Почти как файловый
Memcached 35.9 278 Чуть быстрее Redis
Без кэша 121.5 83 В 3 раза медленнее

Выводы

  1. Все три варианта кэша ускоряют сайт в 2.5–3 раза по сравнению с работой без кэша.
  2. Файловый кэш на SSD почти не уступает Redis — разница 10–15%.
  3. Redis и Memcached показывают одинаковую производительность.
  4. Redis с AOF немного медленнее при записи, но сохраняет кэш после рестарта.
  5. Файловый кэш проще в администрировании, если сайт не кластерный и объём кэша < 1 ГБ.

Рекомендации

Сценарий Рекомендуемый тип кэша
Один сервер с SSD Файловый кэш
Кластер из нескольких фронтов Redis
Частые запросы (API, highload) Memcached
Минимум администрирования Файловый кэш