проблемы с кешем в php (Laravel)

мы создаем веб-API, используя Laravel в качестве серверной части, сразу же после того, как наш сервер перестал отвечать, и мы проверили, что наш файл кэша вышел за пределы пространства нашего сервера.
Я удивился и удивился, поэтому здесь я хочу узнать от эксперта, почему это случилось с нами, потому что мы используем тяжелые видеофайлы (видео с конференций, мы используем веб-RTC в передней части) ??
или есть какие-то другие проблемы, которые могли случиться ??
Пожалуйста, выскажите свое мнение, чтобы мы могли отслеживать проблемы и немедленно решать их, чтобы этого не произошло в будущем.
заранее спасибо

0

Решение

Из документации Laravel:

По умолчанию Laravel настроен на использование драйвера файлового кэша, который хранит сериализованные кэшированные объекты в файловой системе. Для более крупных приложений рекомендуется использовать более надежный драйвер, такой как Memcached или Redis.

Если вы используете файловый драйвер, было бы лучше переключиться на более надежный драйвер как Redis, Memcached, Varnish и т. д.

Относительно того, почему ваш файл кэша занимал больше места на сервере, может быть несколько причин:

  1. Вы можете кэшировать вещи бесконечно, используя что-то вроде Cache::forever и не удаляя элементы для кэша впоследствии с Cache::forget
  2. Вы можете кэшировать тяжелые предметы: например, большие запросы к базе данных, тяжелые просмотры / ответы, тяжелый контент файлов и т. д.
  3. Или есть небольшая вероятность того, что трафик вашего API резко вырос, и вам действительно нужно обновление аппаратного обеспечения 🙂

Я не уверен, есть ли способ (для файлового драйвера) выяснить, какие ключи занимают больше всего места в кеше, но если вы переключитесь на redis или же memcached кеш драйвера на некоторое время можно легко перечислите размер кеша, сгруппированного по ключу кеша, и выясните, какие тяжелые элементы ваш код на самом деле кеширует!

0

Другие решения

Других решений пока нет …