Using MariaDB and memcached with Ruby
There are a number of different modules for interfacing to memcached within Ruby. The Ruby-MemCache
client library provides a native interface to memcached that does not require any external libraries, such as libmemcached
. You can obtain the installer package from http://www.deveiate.org/projects/RMemCache.
To install, extract the package and then run install.rb:
shell> install.rb
If you have RubyGems, you can install the Ruby-MemCache
gem:
shell> gem install Ruby-MemCache Bulk updating Gem source index for: http://gems.rubyforge.org Install required dependency io-reactor? [Yn] y Successfully installed Ruby-MemCache-0.0.1 Successfully installed io-reactor-0.05 Installing ri documentation for io-reactor-0.05... Installing RDoc documentation for io-reactor-0.05...
To use a memcached instance from within Ruby, create a new instance of the MemCache
object.
require 'memcache' memc = MemCache::new '192.168.0.100:11211'
You can add a weight to each server to increase the likelihood of the server being selected during hashing by appending the weight count to the server host name/port string:
require 'memcache' memc = MemCache::new '192.168.0.100:11211:3'
To add servers to an existing list, you can append them directly to the MemCache
object:
memc += ['192.168.0.101:11211']
To set data into the cache, you can just assign a value to a key within the new cache object, which works just like a standard Ruby hash object:
memc['key'] = 'value'
Or to retrieve the value:
print memc['key']
For more explicit actions, you can use the method interface, which mimics the main memcached API functions, as summarized in the following table: