168 слов | 1 минута
Сравнение Redis, Memcached и файлового кэша в 1C-Битрикс
Условия теста
- 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
- Минимум администрирования --- файловый кэш