This component enables caching of an application's response contents on both page- and fragment-levels. Output cached in this manner is persisted, until it expires or is actively expired, in a configurable store of your choosing. Several common caching stores are supported out of the box.
Modules: Helpers
.new(name, options = {}) ⇒ Object
.padrino_route_added(route, verb, path, args, options, block) ⇒ Object
.registered(app) ⇒ Object
Register these helpers:. Register these helpers:
Padrino::Cache::Helpers::ObjectCache Padrino::Cache::Helpers::CacheStore Padrino::Cache::Helpers::Fragment Padrino::Cache::Helpers::Page
for Padrino::Application.
By default we use FileStore as showed below:
set :cache, Padrino::Cache.new(:File, :dir => Padrino.root('tmp', app_name.to_s, 'cache'))
However, you can also change the file store easily in your app.rb:
set :cache, Padrino::Cache.new(:LRUHash) # Keeps cached values in memory set :cache, Padrino::Cache.new(:Memcached) # Uses default server at localhost set :cache, Padrino::Cache.new(:Memcached, '127.0.0.1:11211', :exception_retry_limit => 1) set :cache, Padrino::Cache.new(:Memcached, :backend => memcached_or_dalli_instance) set :cache, Padrino::Cache.new(:Redis) # Uses default server at localhost set :cache, Padrino::Cache.new(:Redis, :host => '127.0.0.1', :port => 6379, :db => 0) set :cache, Padrino::Cache.new(:Redis, :backend => redis_instance) set :cache, Padrino::Cache.new(:Mongo) # Uses default server at localhost set :cache, Padrino::Cache.new(:Mongo, :backend => mongo_client_instance) set :cache, Padrino::Cache.new(:File, :dir => Padrino.root('tmp', app_name.to_s, 'cache')) # default choice
You can manage your cache from anywhere in your app:
MyApp.cache['val'] = 'test' MyApp.cache['val'] # => 'test' MyApp.cache.delete('val') MyApp.cache.clear
© 2010–2019 Padrino
Licensed under the MIT License.
https://www.rubydoc.info/github/padrino/padrino-framework/Padrino/Cache