Estoy construyendo una aplicación de Rails que se ocupa de la carga de archivos a través de CarrierWave. Actualmente, las cargas de archivos más grandes bloquean el servidor durante un tiempo significativo. He visto soluciones como la gema s3-swf-upload-plugin que omite el servidor local y envía archivos directamente desde el navegador a S3, pero esto requeriría algunas modificaciones para pregenerar nombres de archivo únicos y sincronizarlos con la base de datos. Estoy seguro de que no sería demasiado problema, pero la nueva pila Cedar de Heroku me dio la idea de descargar estas solicitudes de larga ejecución a una instancia de node.js que se ejecuta en la misma aplicación. No tengo mucha experiencia con este tipo de cosas, así que disculpe mi fraseología si está un poco mal.Rails and Node en la misma aplicación en Heroku?
¿Sería algo como esto posible? ¿Cómo se configurarían las cosas de manera tal que ciertas solicitudes (que implican la carga de archivos, en este caso) se manejarían mediante una aplicación de nodo incluida en el mismo repositorio heroku que la aplicación principal de rieles?
¿Ha considerado ejecutar una aplicación heroku separada para las cargas? – Elad
Incluso si estuvieran en instancias separadas, creo que la pregunta aún se aplica sobre cómo integrarlos juntos. Además, no estoy seguro de cómo compartir una base de datos iría entre dos aplicaciones heroku separadas. – Luke
Puede obtener la cadena de conexión de la base de datos desde ENV ['DATABASE_URL'] y debería poder usarla en la segunda aplicación. De hecho, con una base de datos dedicada, puede acceder a ella incluso desde una aplicación fuera de heroku: http://devcenter.heroku.com/articles/external-database-access – Elad