Para los que venimos del mundo windows uno de los temas que desconocemos es el de conectar con una terminal SSH a un servidor Linux para gestionar nuestra aplicación en Ruby on Rails.
Escribo este post con la experiencia de utilizar shared hosting, es decir, un servidor en el cual compartes con otros usuarios y que tienes unos permisos determinados.
Debéis tener acceso ssh( shell) a vuestro hosting y podéis acceder con Putty. En el caso de Mac para acceder podéis usar el comando :
ssh [dirección servidor] -u [nombre de usuario] desde la terminal del sistema
Adjunto algunos comandos de interés que pueden ayudaros.
Gestión de Mongrel ( arranque aplicación)
Estando en el directorio de la aplicación.
Con Cluster:
mongrel_rails cluster::start
mongrel_rails cluster::stop
mongrel_rails cluster::restart
Actualmente es como tengo mi aplicación L-exp configurada y he notado mejorías impresionantes.
Sin cluster:
rm -f log/mongrel.pid ( Esta función es para matar el fichero mongrel.pid si hemos matado el proceso)
mongrel_rails start -e production -p 4035 -d
mongrel-_rails restart
mongrel_rails stop
fastcgi:
En principio una vez configurado arranca sólo.
killall -9 dispatch.fcgi ( mata los procesos si necesitamos rearrancar)
Para ver los procesos que tenemos y su carga:
ps ux
top -u [nombre-usuario]
kill -9 pid (mata el proceso con pid)
Para analizar el log de errores:
tail -f log/production.log ( nos muestra el log continuamente)
tail -n200 log/production.log (nos muestra las últimas 200 líneas de log)
tail -f log/production.log | grep “Completed in ” ( Nos muestra solo los queries ejecutados)
Aconsejo que os instaléis el plugin Query_analyzer ya que os ayudará a ver los accesos a base de datos como van.
Comandos básicos:
ls ( dir)
cd / (cambio directorio)
md [nombre directorio] crea directorio
Ejecución de Rakes:
Lo más importante es que si estamos en production añadamos el RAILS_ENV
rake db:migrate RAILS_ENV="production"
Creación de Crons:
Ojo con los crons que pueden saturar un servidor si no se configuran bien.
crontab -e
Podéis encontrar todos los elementos que he utilizado para desarrollar L-exp en la siguiente lista.
Lo más importante es tener un buen hosting y que sean generosos con las respuestas. Como ya he comentado en algún post estoy muy contento con
Popularity: 4% [?]

