Quiero comparar cuántos inicios de sesión por segundo son posibles con un (propio) proveedor de omniauth. Necesito averiguar cómo es el rendimiento de estas solicitudes de omniauth/oauth, y si esta autenticación es de todos modos escalable.¿Cómo se comparan los inicios de sesión por segundo con omniauth/oauth? (ruby + rspec)
lo que tengo hasta ahora:
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
el valor por defecto son 10 los usuarios que se autentican en paralelo a través del proveedor de foo oauth.
resultados:
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!!!!
que realmente no tienen idea de lo que estoy haciendo y si el código es correcto.