Sha256: 03cc257e29b8c8a624690ae0dd28f3d8e1e4a942b7012fca2965c30668e2e831
Contents?: true
Size: 1.75 KB
Versions: 1
Compression:
Stored size: 1.75 KB
Contents
# Cache Failover Gem ## Installation This Gem allows you to configure multiple cache stores in a failover configuration. If the first cache store fails, this gem will attempt to use the next cache store in the list. If the first cache store comes back online, it will revert to using that store. This is useful for high availability and redundancy, such as using a Redis Cache with SolidCache (DB) as a backup in case Redis goes down. Keep in mind, if you use your cache as a session store, users will be logged out. `Gemfile` ```ruby gem 'cache_failover' ``` You will need at least 2 cache stores for failover capability. ```ruby gem 'solid_cache' # optional, but you will need at least 2 cache stores gem 'redis' # optional, but you will need at least 2 cache stores gem 'hiredis' # optional, only for redis gem 'dalli' # optional, but you will need at least 2 cache stores (WIP) gem 'cache_failover' ``` ## Configuration Configure your cache_store normally, but use `CacheFailover::Store` with one argument, an array of hashes with the keys `store` and `options` in the order you would like to failover. Example is shown below: ```ruby config.cache_store = CacheFailover::Store.new( [ { store: ActiveSupport::Cache::MemCacheStore.new(CONFIG[:MEMCACHED_SERVERS], {}), options: {} }, { store: ActiveSupport::Cache::RedisCacheStore.new( url: CONFIG[:REDIS_URL], password: CONFIG[:REDIS_PASSWORD], ), options: {} }, { store: SolidCache::Store.new(), options: { expiry_method: :job } } ] ) ``` ## WIP - Memory Cache Support - File Cache support - Sync cache stores - Add option to not use cache stores after failure unless the application is rebooted. - More options - Tests
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cache_failover-0.2.0 | README.md |