Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # config/server.rb
- require "em-synchrony"
- require "em-synchrony/mysql2"
- config['db'] = EM::Synchrony::ConnectionPool.new(:size => 25) do
- ::Mysql2::EM::Client.new({
- :adapter => 'em_mysql2',
- :database => 'shard001',
- :username => 'xxx',
- :password => 'xxx',
- :host => 'localhost',
- :reconnect => true})
- end
- # server.rb
- def response(env)
- ...
- multi = EventMachine::Synchrony::Multi.new
- ids.each do |id|
- multi.add id, db.aquery("select * from users where id = #{id}")
- end
- users = []
- res = multi.perform
- res.responses[:callback].each do |res|
- res.last.callback{|r| users << r.first}
- end
- ...
- end
Add Comment
Please, Sign In to add comment