Skip to content

Instantly share code, notes, and snippets.

View kapso's full-sized avatar

Kapil kapso

View GitHub Profile
@kapso
kapso / gist:3968277
Created October 28, 2012 10:35
Hiredis test
extend ActiveSupport::Benchmarkable
def logger; Rails.logger; end;
def redis_connection(hire = true)
hire ? Redis.new(logger: nil, driver: 'hiredis') : Redis.new(logger: nil)
end
def test_redis(size = 10_000, hire = true)
key = Digest::MD5.hexdigest(Time.now.to_i.to_s)[0, 24]
@kapso
kapso / gist:3969367
Created October 28, 2012 18:25
Hiredis benchmark
extend ActiveSupport::Benchmarkable
def logger; Rails.logger; end;
def redis_connection(hire = true)
hire ? Redis.new(logger: nil, driver: 'hiredis') : Redis.new(logger: nil)
end
def test_redis_hash(size = 10_000, hire = true)
key = Digest::MD5.hexdigest(Time.now.to_i.to_s)[0, 24]
@kapso
kapso / gist:3969381
Created October 28, 2012 18:31
Hiredis gemfile
gem 'redis', '3.0.2', require: ['redis', 'redis/connection/hiredis']
gem 'hiredis'
{
"errors": [
{
"code": 63,
"message": "User has been suspended"
}
]
}
def connection(options = { pool: true })
if options[:pool]
Mongo::Connection.new("localhost", 27017, pool_size: 15, pool_timeout: 5)
else
Mongo::Connection.new("localhost", 27017)
end
end
def do_write(counter = nil)
if counter
def thread_write
pool = ThreadPool.new(80)
doc_size = 10000
doc_size.times do |i|
pool.process do
write_doc(i)
read_doc(i)
end
def thread_write
pool = ThreadPool.new(80)
doc_size = 10000
doc_size.times do |i|
pool.process do
write_doc(i)
read_doc(i)
end
def thread_write
pool = ThreadPool.new(80)
doc_size = 10000
doc_size.times do |i|
pool.process do
write_doc(i)
read_doc(i)
end
def thread_write
pool = ThreadPool.new(80)
doc_size = 10000
doc_size.times do |i|
pool.process do
write_doc(i)
read_doc(i)
end
rwrwe