redis 键值存取效率测试i
require "rubygems"require "redis"
require "json"
redis = Redis.new(:host => "localhost", :port => 6379)
module AutoJ
def auto_j
h = {}
instance_variables.each do |e|
o = instance_variable_get e.to_sym
h] = (o.respond_to? :auto_j) ? o.auto_j : o;
end
h
end
def to_json *a
auto_j.to_json *a
end
end
class Abc
include AutoJ
def initialize
@base_price = "1.11"
@use_point = 1
@price_amplitude = "0.15"
@time_length = 500
@member_id=12222
@return_time = 15
@member_level_id = 1
@finished = 1
@use_point_type=1
end
def to_json *a
auto_j.to_json *a
end
end
abc =Abc.new()
d = Marshal.dump(abc)
#
#
#
##d = abc.to_json
#
##a = JSON.parse(d)
#
#
puts d.length
t1 = Time.now
fora in (1..100000)
redis.set"goods_#{a}" ,d
# a = redis.get"goods_#{a}"
# Marshal.load(a)
#redis.del"goods_#{a}"
end
t2 = Time.now
puts t2-t1
#
页:
[1]