Mysql
 sql >> Database >  >> RDS >> Mysql

Porting di un'app Ruby/Rails/MRI su JRuby

Abbiamo portato una grande applicazione Rails su JRuby l'anno scorso ed è stata una quantità di lavoro sorprendente. Certo, parte di ciò aveva a che fare con l'app scritta piuttosto male e con molto codice legacy, ma comunque. Nel caso ve lo stiate chiedendo:la maggior parte dei nostri problemi è venuta dalle gemme che abbiamo usato, che poi a volte dipendevano ad es. FFI che non funzionava correttamente con JRuby in quel momento. Un trasferimento a Rubinius che ho fatto un po' più tardi sembrava molto meno doloroso, ma è stato abbandonato a favore di rimanere con la risonanza magnetica.

Per Gemfile, c'è una platform opzione che puoi usare. Ecco un esempio dai documenti di Bundler:

gem "weakling",   :platforms => :jruby
gem "ruby-debug", :platforms => :mri_18
gem "nokogiri",   :platforms => [:mri_18, :jruby]

Ha anche un modulo di blocco:

platforms :jruby do
  gem "foo"
end

Entrambi i moduli funzionano bene, poiché

Come gioiello per MySQL, userei il nome appropriato mysql , sembra esserci un jdbc-mysql per JRuby.