Sha256: fb0c6687706c3a5e42e364acf29082b81c6175140725d4b04e3e678620def441

Contents?: true

Size: 1.96 KB

Versions: 1

Compression:

Stored size: 1.96 KB

Contents

# BitzerStore

The cache of Rails uses the cache cluster only one.
BitzerStore can treat multiple cache clusters.

## Installation

Add this line to your application's Gemfile:

    gem 'bitzer_store'

And then execute:

    $ bundle

Or install it yourself as:

    $ gem install bitzer_store

## Usage

1.config
at ```config/environments/*.rb```

```ruby
MyApp::Application.configure do
  BitzerStore.configure(config) do |cache|
    cache.default :mem_cache_store, "server0"
    cache.top_page :mem_cache_store, "server1", "server2"
    cache.obj :dalli, "server3" 
    cache.footer :file_store, "/tmp"
  end
end
```

The ```xxx``` of ```cache.xxx``` is name of cache cluster.
You should supply ```cache.default``` which is used to cache cluster of default.

You can specify the setting common items. 
Setting common items will be overwritten with individual setting.

```ruby
MyApp::Application.configure do
  BitzerStore.configure(config) do |cache|
    cache.common_setting :memcache_store, "server0", :expires_in => 600
    cache.default :namespace => "tsu"
    cache.top_page :dalli, "server1"
  end
end
```

The contents of the above is the same as below.

```ruby
MyApp::Application.configure do
  BitzerStore.configure(config) do |cache|
    cache.default :memcache_store, "server0", :expires_in => 600, :namespace => "tsu"
    cache.top_page :dalli, "server1", :expires_in => 600 
  end
end
```

2.Rails.cache
When specify no name, to use default cache cluster.

```ruby
Rails.cache.read("a")
```

Supply an options with a :sheep key. It's value is cache cluster name.

```ruby
Rails.cache.read("a", :sheep => :cluster_a)
```

caches_action, fragment_cache are the same.

```ruby
<% cache "page", :sheep => :cluster_a do %>
  <%= somethong %>
<% end %>
```

## Contributing

1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bitzer_store-0.0.3 README.md