Nos mudamos
March 29th, 2007
Finalmente comenzamos el proceso de migración de todas las aplicaciones que estaban en nuestro ex provider a los nuevos servidores virtualizados.
A la brevedad postearé (si, es un nuevo verbo) un doc acerca del proceso completo de instalación, configuración y migración de las aplicaciones, pero mientras:
Rails Stack
- Antes – Linux/apache/mongrel/mysql
- Ahora – Xen/nginx/mongrel/mysql (en otro virtual server diferente)
Por lo pronto Blogs on Typo es lo primero (visible) que se ha migrado y luce bien. Si llegan a encontrar algún problema, por favor, no duden en reportarlos.
Saludos, y good rails para todos…
Move on up - Self hosting!
February 25th, 2007
Despues de muchos problemas con nuestro actual hosting, hemos decidido poner nuestro propio server on-line. Contratamos un housing y a la brevedad estaremos en un server mas estable con una arquitectura virtualizada con xen por nosotros mismos. Detallaremos mas adelante.
Estamos corriendo con FCGI ahora
May 21st, 2006
Luego de varios intentos, pruebas, etc. Pudimos dejar las aplicaciones Rails correr con FCGI.
Que hicimos? Agregamos esta configuracion al apache httpd.conf
#
#
# Fast-cgi configuration added 21/5/06
#
<IfModule mod_fastcgi.c>
FastCgiIpcDir /tmp/fcgi_ipc/
AddHandler fastcgi-script .fcgi
FastCgiWrapper On
FastCgiConfig -autoUpdate -singleThreshold 100 -killInterval\
240 -idle-timeout 180 -maxProcesses 10 -minProcesses 1\
-initial-env RAILS_ENV=production -processSlack 1 -maxClassProcesses 1
</IfModule>
Tambien tuvimos que hacer:
chmod -R 777 /tmp/fcgi_ipc/
Con esto logramos una mejor performance en las aplicaciones Rails usando FCGI contra CGI y sin sacrificar demasiados recursos.
Asi y todo el consumo de memoria de nuestro amigo Typo es considerable, seguiremos investigando.
P
Esto ya fue corregido en la version 1.1.2 de engines ver Aqui
Utilizando Engines me encontre con el siguiente problema:
En mi hosting tengo las gems de rails 1.0 y 1.1 instaladas por el soporte y en mi custom gem dir tengo rails 1.1.2 y en vendor rails tengo 1.1.2 Pero cuando ejecutaba el dispatch magicamente iba a buscar el rails 1.0 Obviamente estaba configurado el CONFIG = {:edge => true} en environment.rb Luego de varias horas de debug encontre el siguiente workaround en engines.rb:
Donde dice:
1 2 3 4 5 6 |
begin require 'rails_version' # Rails 1.0, 1.1.0 rescue LoadError, Gem::Exception require 'rails/version' # renamed as of Rails 1.1.1 end |
1 2 3 4 5 6 |
begin require 'rails/version' # renamed as of Rails 1.1.1 rescue LoadError, Gem::Exception require 'rails_version' # Rails 1.0, 1.1.0 end |
Seguramente hay mejores formas de hacerlo. Espero comentarios.
FCGI Shared Hosting & Apache 1.3
May 6th, 2006
Para poder correr rails con fcgi en un hosting compartido (shared hosting) tuve que realizar lo siguiente.
Setear la propiedad de svn:executable a dispatch.fcgi. Esto hace que cuando haces el svn co te lo deje como ejecutable (en linux obvio).
Cambiar el shebang de c:/ al which del ruby en el host (tipear which ruby y nos da el path del shebang)
nos quedaria algo asi:
#!c:/ruby/bin/ruby
require File.dirname(__FILE__) + "/../config/environment"
require 'fcgi_handler'
RailsFCGIHandler.process!
modificar .htaccess
Modificamos la linea que dice:
RewriteRule ^(.*)$ dispatch.cgi [QSA,L]
y la dejamos asi:
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
rake freeze_gems
rake deploy
rake deploy es valido si utilizamos Capistrano.
Importante! Asignar permisos de lectura-escritura en el directorio tmp/sessions
Desarrollo en Windows y Deploy en Linux
April 28th, 2006
Para trabajar en los 2 entornos y no tener conflictos de paths y versiones.
Windows (webrick) ——> Linux (Apache)
Cuando creamos la aplicacion rails nos genera en el folder public dispatch.cgi y dispatch.rb entre otros.
Si lo creamos en windows nos creara el shebang para ruby.exe apuntando al path donde instalamos el ruby.
Ahora bien, tenemos todos nuestros sources en un repositorio svn y queremos hacer el deploy en linux, con el shebang de windows no va a funcionar. Pero si corregimos los shebang para linux, va a funcionar linux y no windows. Si miramos en detalle el tema, nuestro webrick solo utilizara dispatch.rb y el apache en linux utilizara el dispatch.cgi, entonces debemos cambiar el shebang en dispatch.cgi, entonces funcionara en linux y los cambios pueden mantenerse bajo svn sin afectar el funcionamiento de nuestro entorno de desarrollo.
Espero les sirva.
P
Mas info: Desarrollo Windows deploy Linux Wiki.onrails.com.ar
Rails Compartido (Shared hosting) on Rails
April 14th, 2006
Luego de varios pedidos de ayuda he logrado correr rails 1.1.2 en un hosting compartido de esos que tienen cpanel. El unico requisito es que tengan acceso shell y rubygems instalado.
Lo pueden consultar en Wiki Onrails
P


