Module: ActionController::Caching
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Included In:
| |
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
::ActiveSupport::Concern
|
|
Defined in: | actionpack/lib/action_controller/caching.rb |
Overview
Caching
is a cheap way of speeding up slow applications by keeping the result of calculations, renderings, and database calls around for subsequent requests.
You can read more about each approach by clicking the modules below.
Note: To turn off all caching provided by Action Controller, set
config.action_controller.perform_caching = false
Caching stores
All the caching stores from ::ActiveSupport::Cache
are available to be used as backends for Action Controller caching.
Configuration examples (FileStore is the default):
config.action_controller.cache_store = :memory_store
config.action_controller.cache_store = :file_store, '/path/to/cache/directory'
config.action_controller.cache_store = :mem_cache_store, 'localhost'
config.action_controller.cache_store = :mem_cache_store, Memcached::Rails.new('localhost:11211')
config.action_controller.cache_store = MyOwnStore.new('parameter')
Class Method Summary
::ActiveSupport::Concern
- Extended
class_methods | Define class methods from given block. |
included | Evaluate given block in context of base class, so that you can write class macros here. |
prepended | Evaluate given block in context of base class, so that you can write class macros here. |
append_features, prepend_features |
Instance Method Summary
- #instrument_name private
- #instrument_payload(key) private
DSL Calls
included
[ GitHub ]32 33 34
# File 'actionpack/lib/action_controller/caching.rb', line 32
included do include AbstractController::Caching end
Instance Method Details
#instrument_name (private)
[ GitHub ]# File 'actionpack/lib/action_controller/caching.rb', line 45
def instrument_name "action_controller" end
#instrument_payload(key) (private)
[ GitHub ]# File 'actionpack/lib/action_controller/caching.rb', line 37
def instrument_payload(key) { controller: controller_name, action: action_name, key: key } end