Fragment cache directory names in Rails 3

Is there a way to set the directory structure for the fragment cache? I know by default it is using Zlib.adler32 to generate the directory name for a key.

Is there any way to configure this? I want to be able to clear the fragment cache externally from the app by a different process.

Is there a way to set the directory structure for the fragment cache?

Yes, you can use the following:

config.cache_store = :file_store, “/path/to/cache/directory”

I

know by default it is using Zlib.adler32 to generate the directory name

for a key.

Is there any way to configure this? I want to be able to clear the

fragment cache externally from the app by a different process.

It seems that :mem_cache_store may be what you’re looking for

because it uses a seperate process to manage an application’s

cache. However, it’s in memory instead of the disk. I would

recommend reading the following for additional information:

http://guides.rubyonrails.org/caching_with_rails.html

Good luck,

-Conrad

Conrad Taylor wrote in post #964899:

Is there a way to set the directory structure for the fragment cache?

Yes, you can use the following:

config.cache_store = :file_store, "/path/to/cache/directory"

I know by default it is using Zlib.adler32 to generate the directory name for a key.

Is there any way to configure this? I want to be able to clear the fragment cache externally from the app by a different process.

It seems that :mem_cache_store may be what you're looking for because it uses a seperate process to manage an application's cache. However, it's in memory instead of the disk. I would recommend reading the following for additional information:

Caching with Rails: An Overview — Ruby on Rails Guides

Good luck,

-Conrad

Well, all that does for me is allow me to move the cache directory. It does not allow me to set the directory name structure. I want predictable names (views/domain/controller/action/key for example), not 0EF/2FF/(etc).

I retested it just to make sure. I set it to be "tmp/cache2"

Here is my cache2 directory

cd tmp/cache2/ Robert-Rouses-MacBook-Pro:cache2 robertrouse$ ls 152 154 1BE 210 4BA

I have juste above a a message that is telling me that this post is 6 months old… but I still sort of resolve this problem with the explanation here ››