Un lado malo de presionar a Heroku es que debo presionar el código (y el servidor se reinicia automáticamente) antes de ejecutar mis migraciones de db. Esto obviamente puede causar unos 500 errores en los usuarios que navegan por el nuevo código sin las nuevas tablas/atributos: la solución propuesta por Heroku es usar el modo de mantenimiento, pero quiero una forma sin inconvenientes para que mi webapp corriendo todo el tiempo!Despliegue en caliente en Heroku sin tiempo de inactividad
¿Hay alguna manera? Por ejemplo, con Capistrano:
- preparo el código para desplegar en una nueva dir
- corro migraciones (hacia atrás) y el código antiguo seguir trabajando perfectamente
- I SWITH ejemplo mestizo al nuevo directorio y reinicie el servidor
... ¡y no tengo tiempo de inactividad!
Hola Shingara, Lo siento, pero no estoy de acuerdo con usted. no quiero utilizar el equilibrio de carga para esto: una de las grandes características de Heroku es el "trasparente" poder de nubes por la necesidad y deseo utilizar esta función ... Para equilibrar la carga en Heroku He MANTENER a dos diferentes aplicaciones y una base de datos de solo lectura pueden causar problemas a mis usuarios. Y un sistema sin tiempo de inactividad no es imposible. Estoy acostumbrado explicado el sistema sin tiempo de inactividad. En caso de un cambio grande y sin la posibilidad de un esquema de db-compatible retro Puedo utilizar una página de mantenimiento: pero esto es el 5% de todos mis casos ... – zetarun
Puede evitar el problema descrito en esta respuesta mediante el uso de CouchDB, por ejemplo. – iconoclast