Tôi muốn đánh giá có bao nhiêu lần đăng nhập mỗi giây là có thể với nhà cung cấp omniauth (riêng). Tôi cần tìm hiểu hiệu suất của yêu cầu omniauth/oauth này như thế nào và liệu xác thực này có thể mở rộng không?Cách đăng nhập điểm chuẩn mỗi giây với omniauth/oauth? (ruby + rspec)
những gì tôi có cho đến nay:
def performance_auth(user_count=10)
bm = Benchmark.realtime do
user_count.times do |n|
fork do
click_on 'Logout'
omniauth_config_mock(:provider => "foo", :uid => n, :email => "foo#{n}@example.net")
visit "/account/auth/foo/"
end
end
Process.waitall
end
puts "#{user_count} users Benchmark: #{bm}"
bm
end
mặc định là 10 người dùng xác thực song song thông qua các nhà cung cấp foo oauth.
kết quả:
only 2 users can authenticate parallel in 1 sec (is this possible?)
10 users: 5.090777 sec
20 users: 10.471208 sec
50 users: 111.565979 sec ~ 2min!!!!
Tôi có thực sự không có ý tưởng những gì tôi đang làm và nếu mã này là đúng.