Подтвердить что ты не робот

Ruby on Rails на IIS?

Я пишу приложение Ruby on Rails, которое обычно работает на Heroku или Linux Box, но мне также нужно будет развернуть его на Windows Server.

Сервер - это 64-разрядный сервер Win2008 с установленным IIS 7.0, поэтому обычно я предпочитаю использовать IIS вместо настройки Apache рядом с ним.

Я просто не знаю, работает ли Ruby/Rails с IIS? Работают ли драгоценные камни? 64-разрядная проблема?

Я думаю об использовании Ruby 1.9.1 и Rails 2.3.

4b9b3361

Ответ 1

вы должны любить боль, потому что это развертывание будет больно. Я не знаю, является ли это решением для вас, но по моей старой работе мы развертывали веб-приложения на планшетах Windows (более 200 из них) и решили использовать виртуальную коробку и развернуть приложение в vm. Одно из наших старых приложений на планшетах для ПК, которые мы развернули в Windows без iis, просто использовали ruby ​​и rubygems с mongrel как сервер приложений и mysql в качестве базы данных, но это было непривлекательно.

Ответ 2

Чтобы установить Ruby on Rails для 64-разрядного сервера Windows Server 2008 IIS 7, используйте Helicon Zoo

Ответ 5

Вы можете развернуть Rails в IIS, это очень сложно, и документации не так много. Вам понадобится специальная реализация Fast-CGI: http://roriis.codeplex.com/

Также информация здесь: http://mvolo.com/blogs/serverside/archive/2007/02/18/10-steps-to-get-Ruby-on-Rails-running-on-Windows-with-IIS-FastCGI.aspx

Rails под Apache в Windows немного проще, но самым большим недостатком развертывания Windows является то, что вы не можете использовать Capistrano для автоматизации развертываний. Драгоценные камни работают в Windows. Весь мой опыт - 32 бит, может быть 64-битный связанный сбой, но я сомневаюсь.

Ответ 6

Для работы в Windows с RoR я делаю это:

1. Install Ruby and RoR
2. Install NginX (balancing for each thin server launched)
3. Install Thin Server
4. Create a service (on Ruby code) that run each thin server process with each affinity process (cpu0/cpu1...) for example if have a DualCore CPU it will launch 2 Thin Server (different port between those) and set affinity for each one (using PID).
5. Set a windows user with permission to do run that service (like a IIS pool and isolated process concept)

Мое приложение работает более одного года и не имеет проблем с этим, и я счастлив.