могу ли я прочитать содержимое файла кэша file_store в rails?

#ruby-on-rails #caching

#ruby-on-rails #кэширование

Вопрос:

У нас есть производственное приложение, которое замедляется, одним из подозреваемых является файловый кеш. Периодически мы видим гигантские файлы кэша file_store, например:

 11044573 ./21D/AE1/menu_structure_5cb9b70e11e9b84ac9fa8412_super_admin
  

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

 -rw-r--r-- 1 deploy deploy 19K Oct 23 17:27 ./21D/AE1/menu_structure_5cb9b70e11e9b84ac9fa8412_super_admin
  

(это разные форматы, потому что они были найдены с помощью разных команд, но первая — гигантская, вторая — 18K). Все работает нормально, поэтому мы думаем, что должна быть какая-то странная вещь, когда тонна дополнительных данных неправильно хранится в файле кэша. Есть ли способ посмотреть, что там, чтобы мы могли отладить, почему это происходит?

Спасибо за любую помощь, Кевин

Ответ №1:

Я перерыл исходный код rails и вот ответ

 cache_file_path = "tmp/cache/your_cache_file"
cache_entry = Marshal.load(File.read cache_file_path)
cache_entry.value