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 раза медленнее |
Выводы
- Все три варианта кэша ускоряют сайт в 2.5–3 раза по сравнению с работой без кэша.
- Файловый кэш на SSD почти не уступает Redis — разница 10–15%.
- Redis и Memcached показывают одинаковую производительность.
- Redis с AOF немного медленнее при записи, но сохраняет кэш после рестарта.
- Файловый кэш проще в администрировании, если сайт не кластерный и объём кэша < 1 ГБ.
Рекомендации
| Сценарий | Рекомендуемый тип кэша |
|---|---|
| Один сервер с SSD | Файловый кэш |
| Кластер из нескольких фронтов | Redis |
| Частые запросы (API, highload) | Memcached |
| Минимум администрирования | Файловый кэш |