Configuración básica del servidor (Heroku)

Heroku es un proveedor comercial de alojamiento en la nube. Es la forma más sencilla de desplegar oTree.

El plan gratuito de Heroku es suficiente para probar tu aplicación, pero una vez que estés listo para lanzar un estudio, deberías actualizar a un servidor de pago, que puede manejar más tráfico. Sin embargo, Heroku es bastante económico, porque solo pagas por el tiempo que realmente lo usas. Si realizas un estudio durante solo 1 día, puedes apagar tus dynos y complementos, y entonces solo pagas 1/30 del costo mensual. A menudo, esto significa que puedes realizar un estudio por solo unos pocos dólares.

Configuración de Heroku

Para desplegar en Heroku, debes usar oTree Hub, que automatiza la configuración de tu servidor y asegura que tu servidor esté correctamente configurado.

oTree Hub también ofrece monitoreo de errores/rendimiento.

Rendimiento del servidor

Heroku ofrece diferentes niveles de rendimiento para recursos como tu dyno y base de datos. El nivel que necesitas depende de cuántos tráfico recibirá tu aplicación y cómo está codificada.

El rendimiento es un tema complicado ya que hay muchos factores que afectan el rendimiento. El plan Pro de oTree Hub tiene una sección de «monitor» que analizará tus registros para identificar problemas de rendimiento.

Consejos generales:

  • Actualiza oTree a la última versión

  • Utiliza bots de navegador para realizar pruebas de estrés en tu aplicación.

  • Con los niveles de dyno más altos, Heroku proporciona una pestaña de «Metrics». Observa «Dyno load». Si los usuarios están experimentando tiempos de carga de página lentos y tu dyno load se mantiene por encima de 1, entonces deberías obtener un dyno más rápido. (Pero no ejecutes más de 1 dyno web.)

  • Si tu carga de dyno se mantiene por debajo de 1 pero los tiempos de carga de la página siguen siendo lentos, el cuello de botella podría ser algo más, como tu base de datos Postgres.

Las sesiones más exigentes son aquellas que combinan (1) muchas rondas, (2) jugadores que pasan solo unos pocos segundos en cada página y (3) muchos jugadores jugando simultáneamente, porque estas sesiones tienen un alto número de solicitudes de página por segundo, lo que puede sobrecargar el servidor. Considera adaptar estos juegos para usar Páginas en vivo, lo que resultará en un rendimiento mucho más rápido.