sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Es correcto mi entendimiento del tamaño de Unicorn, Sidekiq y DB Pool?

En Unicorn, cada proceso establece su propio grupo de conexiones, por lo que si la configuración de su grupo de db es 5 y tiene 5 trabajadores Unicorn, puede tener hasta 25 conexiones. Sin embargo, dado que cada trabajador unicornio puede manejar solo una conexión a la vez, a menos que su aplicación use subprocesos internamente, cada trabajador solo usará una conexión db.

En Sidekiq, las conexiones en el grupo se comparten entre subprocesos, por lo que debe tener al menos una conexión disponible por trabajador. Si tiene una concurrencia de 5, entonces su grupo debe tener al menos 5.

Tener un tamaño de grupo mayor que 1 significa que cada trabajador Unicornio tiene acceso a conexiones que no puede usar, pero en realidad no abrirá las conexiones, así que eso no importa.

La cantidad total de conexiones reales que requiere su aplicación, a menos que esté usando subprocesos en el código de su aplicación (y no comparten una conexión de base de datos), es una por trabajador de Sidekiq más una por trabajador de Unicorn.