ruby-on-rails - para - ruby on rails tutorial
Limitaciones en la ejecuciĆ³n de Ruby/Rails en Windows (16)
En la documentación de instalación de RoR, menciona que existen muchas limitaciones para ejecutar Ruby on Rails en Windows, y en algunos casos, las bibliotecas completas no funcionan.
¿Cuán malas son estas limitaciones, siempre debo usar Linux para codificar / ejecutar RoR, y se espera que Iron Ruby solucione estas limitaciones o sean fundamentales para el sistema operativo en sí?
EDITAR Gracias por la respuesta sobre la instalación y la ejecución en Linux, pero realmente intento comprender las limitaciones de la funcionalidad tal como se hace referencia en la documentación de instalación y las bibliotecas que no funcionan. Estoy intentando encontrar un enlace al comentario, pero fue hace referencia en una instalación me lee cuando instalé el paquete msi, creo
EDITAR Gracias por las referencias a IronRuby últimamente, sin duda es un proyecto para ver, y como es, obviamente, un lenguaje .NET, será invaluable si cumple con las promesas. Eventualmente, sin embargo, en mi caso, simplemente mordí la bala e instalé un servidor Ubuntu.
<bias> Debería haberlo hecho hace años </ bias>
¿Nadie mencionó Bitnami RubyStack todavía? Lo he estado usando durante años, junto con RadRails. Incluye Apache, MySQL / Postgre, phpmyadmin, git, etc. Opcional Ruby 1.9.2 / Rails 3.0b. También puede ejecutar el sabor Ubuntu de RubyStack en una máquina virtual, pero aún no lo he intentado.
Aquí hay una descripción general de los problemas actuales con Rails en Windows:
- Ruby y Rails son más lentos en Windows que en sistemas operativos tipo Unix.
- Algunas gemas y bibliotecas no funcionan en Windows.
- Algunos Unix-ismos no están disponibles en Windows ( examples ).
- La comunidad se basa principalmente en Mac o Linux ( esta es una situación particularmente difícil de tratar, nadie quiere estar solo en una isla cuando el resto de la tribu se divierte, se divierte y se lleva bien con la otra isla). es importante. Parece que la mayoría de los desarrolladores de Windows que comienzan con Rails cambian rápidamente a Mac o Linux. Sin embargo , la pequeña comunidad de usuarios de Windows Ruby que son persistentes es extremadamente amigable, dedicada y conocedora, digamos hola ) .
Tenga en cuenta que gran parte de los consejos que siguen ahora están desactualizados debido a los magníficos esfuerzos del equipo de RubyInstaller para brindar estabilidad, compatibilidad y rendimiento a Ruby en Windows. Ya no tengo que usar VirtualBox, que dice mucho acerca de cuán lejos ha llegado Ruby en Windows.
Si desea más detalles técnicos, es necesario leer los siguientes. :
- Ruby para Windows - Parte 1
- ¿Windows es una plataforma compatible para Ruby? Supongo que no
- Prueba del nuevo instalador de Ruby con un clic para Windows
- Todavía jugando con Ruby en Windows
- Chateando con Luis Lavena (Ruby en Windows)
La cita de elección de ese último es:
AkitaOnRails: lo más obvio es que cualquier Gema con extensiones C sin los binarios adecuados para Windows fallará. Intentar ejecutar comandos de shell fallará y RubyInline también. ¿Qué más?
Luis Lavena: Jeje, eso es solo la punta del iceberg
Habiendo dicho todo eso, no creo que el desarrollo con Rails en Windows sea demasiado doloroso. Usar Ruby es, en su mayor parte, un placer. Evitaría InstantRails porque, para ser franco, es igual de fácil instalar Ruby correctamente usando el instalador de un solo clic, y luego hacer los gem install rails
. Si necesita Apache y MySQL, WAMP es una buena opción, aunque estos no son necesarios si simplemente se queda con Mongrel y SQLite.
Lo que me llevo a hacer recientemente es ejecutar VirtualBox con una instancia de Ubuntu Server que refleja fielmente el servidor de implementación. Asigné una unidad de red al Servidor Ubuntu, luego edité y ejecuté mi código directamente en la máquina virtual. No usa casi ningún tipo de memoria (actualmente usa ~ 43MB, contrasta con Firefox, que usa ~ 230MB) y Rails en realidad tiene un mejor desempeño que ejecutarlo nativamente en Windows. Además, puedes experimentar con tu servidor virtual con relativa seguridad. Es una configuración realmente agradable, lo recomiendo encarecidamente.
Finalmente, aquí hay un par de blogs de Ruby / Rails dirigidos a usuarios de Windows:
Descubrí que poner en marcha un entorno de desarrollo con Instant Rails en Windows era realmente simple. Especialmente cuando se usa Netbeans o Radrails como el IDE.
Menos de 10 minutos de trabajo.
¿Qué encontraron los que lucharon para ser el problema?
En general, el rendimiento de Rails es un problema en Windows.
En cuanto a la configuración de implementación, puede ejecutar Rails en FCGI o usar mongrel (y configurar Apache o IIS como proxy). mod_rails ( http://www.modrails.com ) es la mejor opción de implementación para Rails hoy en día, pero no se ejecuta en Windows.
Puede encontrar más suerte usando JRuby en Windows para ejecutar Rails en el entorno JVM que desee (tomcat, servidor J2EE, etc.).
IronRuby todavía no está allí para ejecutar Rails en un entorno de producción, pero finalmente estará destinado a ejecutar Rails dentro de cualquier entorno ASP.NET (IIS).
Hay un instalador empaquetado disponible en http://railsinstaller.org/ que merece la pena consultar.
He estado desarrollando Rails en una PC con Windows por un par de años y no tuve problemas reales para instalarlo cuando comencé. Sin embargo, recientemente reconstruí mi máquina y tuve problemas para obtener el instalador de One-Click Ruby y la última versión de Gems. Entonces esto es lo que intenté.
Opción 1: ejecutar una máquina virtual Linux
Estaba realmente impresionado con la idea de Charles Roper de ejecutar Rails dentro de una máquina virtual Linux, y esta es la ruta que inicialmente elegí. Todo fue bastante bien y lo he estado documentando en budanters.blogspot.com . Sin embargo, he tenido problemas para acceder al servidor MySQL (en la máquina virtual Linux) desde el host de Windows.
Opción 2: Usar jRuby
Recientemente instalé la versión para Windows del paquete NetBeans 6.5 Ruby, y sin darme cuenta, instala las gemas JRuby y Rails. El IDE tiene una interfaz de usuario para instalar Gems, y ahora tengo mi vieja aplicación en funcionamiento en mi entorno de desarrollo.
Actualización noviembre de 2009
Ahora uso Netbeans 6.7 en Windows y, en general, estoy muy contento con él. Los únicos inconvenientes son que instala JRuby 1.2, y necesitaba instalar JRuby 1.3 manualmente para que funcionara algo (no recuerdo qué) y no pude lograr que la implementación funcionara con Capistrano o Vlad the Deployer para funcionar. Vlad usa Open4 que no funciona con JRuby.
Actualización de mayo de 2010
Netbeans 6.8 viene con JRuby 1.4 por lo que ya no tiene que jugar con la instalación manual de JRuby 1.3. También parece que en JRuby 1.5 Open4 ahora funcionará, lo que significa que Vlad podría comenzar a trabajar.
La última vez que jugueteé con Rails en Windows, utilicé Instant Rails y descubrí que era un proceso bastante doloroso, a excepción de la falta de actualizaciones de Instant Rails (que, desde el aspecto del sitio web, sigue siendo un pequeño problema , como Rails 2.0 instantáneo utiliza ROR 2.0, mientras que la versión más reciente es 2.1). También puede ver las respuestas a esta pregunta, ya que menciona una serie de otras maneras de ejecutar RoR en Windows fácilmente.
La alternativa de RailsIntaller es RailsFTW . Ruby & Rails están más actualizados.
La mayor limitación de ejecución en Windows es que muchas cosas son súper lentas.
Ver este hilo Para una discusión
Cosas simples como "script / console" y ejecutar tareas de rake demoran 5 veces más en Windows que en Linux o Mac.
Otras limitaciones son:
- No IE6 en Vista.
- BackgroundRB y muchas otras gemas basadas en c no funcionan en Windows.
- Sin pasajero
Para una aceleración, puede probar el deslizador de mi cargador superior (ayuda a que los rieles funcionen más rápido en el sopor): https://github.com/rdp/faster_require También revise spork, que funciona en doze
Personalmente, encontré que conseguir Ruby + Rails y correr en Windows es pan comido. Desde la descarga hasta la navegación hasta mi primera aplicación ''HelloWorld'', me llevó los 15 minutos. Ni siquiera me molesté con ninguna de las cosas de InstantRails.
Posteriormente no puedo decir que encontré alguno de los problemas de velocidad o problemas informados con Gems en Windows.
Estos chicos también hacen un buen complemento de desarrolladores de Ruby para Visual Studio:
Podrías usar Cygwin y su versión de Ruby. Eso elimina los argumentos sobre gemas compiladas que no funcionan en Windows. He logrado compilar muchas gemas de esa manera.
Si no puede alejarse de Windows use VMware y ejecute algún tipo de Linux (ubuntu es popular). Su límite No.1 se compilará gemas que no funcionan muy bien en Windows.
La mayoría de los tutoriales asumen que estás en algún tipo de * nix, es cuando comienzas a romper fuera del andamiaje básico cuando sientes el dolor. La manipulación de imágenes, la búsqueda de texto completo e incluso algunos adaptadores db solo se ejecutarán en * nix o son difíciles de configurar.
La mayoría de los servidores web también ejecutan Linux, es bueno desarrollarse en la misma plataforma que su host, para evitar dolores de cabeza de implementación.
Tiene opciones de Windows para obtener todo e instalar, como Instantrails :
Sin embargo, mi experiencia personal al intentar hacer que sus colegas funcionen en Windows es que es una experiencia bastante dolorosa. Debería poder ejecutar la mayoría (si no todo), pero prepárese para pasar un poco de tiempo rondando (y frustrarse).
YMMV
Probablemente recomendaría Linux o Mac para el desarrollo de rieles (pero estoy un poco predispuesto contra las ventanas, por lo que es posible que tenga que tomarlo con un grano de sal).
Una opción si estás atascado en Windows es tener servidores virtuales ejecutando Linux / BSD / what-have-you.
Resuelve muchos otros problemas también (lo que le permite probar múltiples configuraciones de servidor fácilmente, etc.).
Yo no soy desarrollador de rieles, pero pensé que esto podría ser de interés. Microsoft ha lanzado IronRuby 1.0, una versión de Ruby que se ejecuta en la plataforma .NET que aparentemente corre 4 veces más rápido que la implementación oficial de Rails en Windows.
http://www.drdobbs.com/open-source/224600662
Sitio oficial http://ironruby.codeplex.com/