queries.rb 650 B

12345678910111213141516171819202122232425
  1. r = Nginx::Request.new
  2. num_queries = r.var.arg_queries.to_i
  3. num_queries = 1 if num_queries < 0
  4. num_queries = 500 if num_queries > 500
  5. # https://github.com/mattn/mruby-mysql/blob/master/example/example.rb
  6. class Worlds
  7. def db
  8. @db ||= Userdata.new("my_#{Process.pid}").db
  9. end
  10. def find(id)
  11. db.execute("select * from World where id = ?", id) do |row, fields|
  12. return Hash[fields.zip(row)]
  13. end
  14. end
  15. def save(world)
  16. db.execute("update World set randomNumber = ? where id = ?", world["randomNumber"], world["randomNumber"])
  17. end
  18. end
  19. ret = num_queries.times.map { World.find(rand(10000)) }
  20. Nginx.rputs JSON::stringify(ret)