Guest User

Untitled

a guest
Mar 1st, 2018
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.44 KB | None | 0 0
  1. #!/usr/bin/env ruby
  2.  
  3. require 'rubygems'
  4. require 'active_record'
  5. require 'benchmark'
  6.  
  7. ActiveRecord::Base.establish_connection(
  8. # :adapter => 'mysql',
  9. :adapter => 'mysqlplus',
  10. :database => 'test',
  11. :username => 'root',
  12. :password => '',
  13. :host => 'localhost',
  14. :pool => 10
  15. )
  16.  
  17. class TestModel < ActiveRecord::Base
  18. end
  19.  
  20. Benchmark.bm do |bm|
  21. bm.report do
  22.  
  23. threads = ThreadGroup.new
  24. 10.times do |i|
  25. thread = Thread.new do
  26. rec = TestModel.first(:select => "id, 'query #{i} sleep 1 second' as data, sleep(1)")
  27. print "#{rec.data}\n"
  28. end
  29. threads.add(thread)
  30. end
  31. threads.list.each { |thread| thread.join }
  32.  
  33. end
  34. end
  35.  
  36. __END__
  37.  
  38. ruby 1.8.7 (2008-08-11 patchlevel 72) [i486-linux]
  39.  
  40. for mysql:
  41. user system total real
  42. query 0 sleep 1 second
  43. query 5 sleep 1 second
  44. query 2 sleep 1 second
  45. query 7 sleep 1 second
  46. query 4 sleep 1 second
  47. query 3 sleep 1 second
  48. query 1 sleep 1 second
  49. query 8 sleep 1 second
  50. query 9 sleep 1 second
  51. query 6 sleep 1 second
  52. 0.040000 0.020000 0.060000 ( 10.098092)
  53.  
  54. for mysqlplus:
  55. user system total real
  56. query 0 sleep 1 second
  57. query 2 sleep 1 second
  58. query 1 sleep 1 second
  59. query 6 sleep 1 second
  60. query 4 sleep 1 second
  61. query 9 sleep 1 second
  62. query 3 sleep 1 second
  63. query 7 sleep 1 second
  64. query 8 sleep 1 second
  65. query 5 sleep 1 second
  66. 0.010000 0.000000 0.010000 ( 1.092088)
Add Comment
Please, Sign In to add comment