развертывание для приложения jruby on rails - PullRequest
0 голосов
/ 21 июля 2010

Я пытаюсь развернуть приложение jruby on rails.

Сейчас я запускаю mongrel + Apache2, используя обратный прокси-сервер из mod_proxy.Однако, поскольку mongrel_jcluster не работает для последних версий jruby, я могу запустить только один сервер mongrel и не могу воспользоваться преимуществами балансировки нагрузки от apache2.

Есть ли другой способ создания mongrelкластер?Я бы действительно предпочел кластер mongrel + apache2 системе типа java-сервлетов.

Я пробовал джетти, используя следующие инструкции: http://jetty -rails.rubyforge.org /

но я получаю следующую ошибку при запуске сервера Jetty, хотя я проверил свою версию gem activerecord-jdbcmysql-adapter в jruby и там и версию 0.9.7

DEPRECATION WARNING: require "activesupport" is deprecated and will be removed in Rails 3. Use require "active_support" instead. (called from /home/andrew/.gem/jruby/1.8/gems/activesupport-2.3.8/lib/activesupport.rb:2)
2010-07-20 17:00:46.820::INFO:  Logging to STDERR via org.mortbay.log.StdErrLog
Starting server 3000
2010-07-20 17:00:47.134::INFO:  jetty-6.1.14
2010-07-20 17:01:03.511:/:INFO:  Info: using runtime pool timeout of 30 seconds
2010-07-20 17:01:03.511:/:INFO:  Info: received min runtimes = 1
2010-07-20 17:01:03.511:/:INFO:  Info: received max runtimes = 5
Loading parser from serialized file lib/stanford-parser/englishPCFG.ser.gz ... done [4.6 sec].
2010-07-20 17:01:14.341:/:WARN:  Error: unable to initialize application
org.jruby.rack.RackInitializationException: Please install the jdbcmysql adapter: `gem install activerecord-jdbcmysql-adapter` (no such file to load -- active_record/connection_adapters/jdbcmysql_adapter)

Любые предложения будут оценены, спасибо!

РЕДАКТИРОВАТЬ: Я не знаю, если это имеет значение, но я могу сказать, что, прежде чем он выйдет из строя, jetty_rails успешно загружает глобальную переменнуюобъявлено в environment.rb

РЕДАКТИРОВАТЬ: вот мой полный список драгоценных камней от jruby -S gem list --local

*** LOCAL GEMS ***

actionmailer (2.3.8)
actionpack (2.3.8)
activerecord (2.3.8)
activerecord-jdbc-adapter (0.9.7)
activerecord-jdbcmysql-adapter (0.9.7)
activeresource (2.3.8)
activesupport (2.3.8)
builder (2.1.2)
gem_plugin (0.2.3)
jdbc-mysql (5.0.4)
jetty-rails (0.8.1)
jruby-jars (1.5.1)
jruby-openssl (0.7)
jruby-rack (1.0.1)
mizuno (0.3.6)
mongrel (1.1.5)
rack (1.1.0)
rails (2.3.8)
rake (0.8.7)
rubyzip (0.9.4)
sources (0.0.1)
warbler (1.1.0)

Ответы [ 2 ]

1 голос
/ 21 июля 2010

Единственный возможный ответ, который я знаю, - это то, что у вас в системе есть два переводчика ruby, а тот, который подбирается средой пристани, пропускает драгоценные камни.ruby -v дает вам ответ, отличный от jruby -v?

При этом, есть ли причина, по которой вы не хотите использовать warble и развернуть войну на Jetty или Tomcat?Я считаю, что это хорошо работает.

1 голос
/ 21 июля 2010

Возможно, вы переключаетесь между несколькими интерпретаторами ruby ​​(через RVM или вручную). Удостовериться что у вас есть 2.3.8 гемов для рельсов и их зависимостей, запустив "список гемов" с помощью Jruby.

Если у вас нет драгоценных камней под Jruby, запустите "gem install -v = 2.3.8 rails". Вы можете упаковать драгоценные камни в дереве проекта, запустив команду «rake rails: freeze: gems».

...