Hi, I have an Jruby on Rails app that I’d love to deploy on Google
AppEngine. Does anyone here deploy their app to GAE? Does anyone know if
it’s even still possible to deploy a Rails app on GAE?
I know there were a bunch of gems such as datamappers (because GAE uses
a non-relational database), but the support seems to have suddenly
stopped in late 2011, and there’s pretty much nothing since, anywhere. I
know that since 2011, Google Cloud SQL has become available - so maybe
we can use that with GAE for our data storage?
However, I have done a bit of research and found that there are newer
versions of the datamapper gem called ‘Ruby Object Mapper’ and one
called ‘Sequel’. In theory these could work - but not sure if you can do
complex associations like has_many :through with a rich join table.
It’s using an old version of JRuby-Rack but latest 1.1.x should still
work,
if not it’s a bug.
But do not expect “top-notch” performance, it’s probably best to do some
GAE specific tunings (I do not know what those would be - wanted to play
with it for a while but just did not get into it - maybe for the next
1.2.0
release, we’ll see). Also you might need to understand the
Rack/Rails/Servlet stack to some detail.
In terms of Cloud SQL, that is another part of the story, I have not
seen
any AR-JDBC users using it but that does not mean they do not exist
(just
have not reported any issues yet or reported them simply as MySQL). That
there’s also other ORMs out there that might just work if it’s MySQL
compatible.
It’s using an old version of JRuby-Rack but latest 1.1.x should still
work,
if not it’s a bug.
But do not expect “top-notch” performance, it’s probably best to do some
GAE specific tunings (I do not know what those would be - wanted to play
with it for a while but just did not get into it - maybe for the next
1.2.0
release, we’ll see). Also you might need to understand the
Rack/Rails/Servlet stack to some detail.
In terms of Cloud SQL, that is another part of the story, I have not
seen
any AR-JDBC users using it but that does not mean they do not exist
(just
have not reported any issues yet or reported them simply as MySQL). That
there’s also other ORMs out there that might just work if it’s MySQL
compatible.
Good Luck, K.
Oh, I didn’t know JRuby-rack was still actively maintained, that’s
interesting. So I just need this + a way of mapping the associations to
GAE’s datastore then?
Almost zero actualy GAE experience on my side but if you need GAE’s
data-store than it’s probably best if you use something similar included
with the appengine gem.
Or simply just do the things yourself with JRuby’s Java integration, but
I’m guessing the DS part should be easy to extract out esp. since you
might
need to fix things as you roll …
In terms of JRuby-Rack, yes it (slowly) lives. Have been involved
maintaining a while, unfortunately there’s very few other maintainers
after
Nick left and it really needs a revamp.
So yeah it’s still used and there’s a lot of great things that can be
done [to-do] towards **1.2** · Issue #168 · jruby/jruby-rack · GitHub, but do not take my word
for
fixing GAE issues ASAP !
I’m planning on trying a GAE deploy, to see how it’s doing but until I
get
to it feedback from others is always appreciated.