`

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[e[1..-1]] = (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
for  a 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
#
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics