ruby on google app engine 2nd athens ruby me

9
Placeholder for a Two-Line Title International Theme Ruby on Google App Engine Panagiotis Papadopoulos http://6pna.com - http://webz.gr 2nd Athens Ruby Meetup

Upload: panagiotis-papadopoulos

Post on 18-May-2015

1.096 views

Category:

Technology


0 download

DESCRIPTION

My presentation for the 2nd Athens Ruby Meetup about deploying Ruby apps on Google App Engine

TRANSCRIPT

Page 1: Ruby On Google App Engine 2nd Athens Ruby Me

Placeholder for a Two-LineTitleInternational Theme

Ruby on Google App Engine

Panagiotis Papadopouloshttp://6pna.com - http://webz.gr

2nd Athens Ruby Meetup

Page 2: Ruby On Google App Engine 2nd Athens Ruby Me

From Ruby to JRubyWe know Ruby MRI but Ruby runs on JVM too

• Like Ruby but runs on top of JVM• JRuby is mature

o Ruby Thread are java threadso GC is the bullet proof Java GCo Java Unicodeo Compiled codeo GC and threading work seamlesslyo Huge variety of libarieso deploy RoR with a single .war

• But ...o gems need native extensionso great performance needs JVM knowledge

Page 3: Ruby On Google App Engine 2nd Athens Ruby Me

Google App EngineWhat is App Engine

• exciting• running on Google

infrastructure• limited & has unique

methodologies• Java & Python only• scaling to infinity• having an integrated

enviroments• almost free

What is  What is not• Shared Hosting• VPS• a server to port my

projects• run commodity

software (ex. phpBB)• RDBMS• a technology for

noobs

Page 4: Ruby On Google App Engine 2nd Athens Ruby Me

Why do we need JRubyBecause it can execute on App Engine JVM

• Learn the GAE limitations and tool seto no relational database although GQL make it easiero 1000 files upload limito not writable filesystemo no custom TCP, UDP connectiono etc o free up to 6.5 cpu hourso index everything (or most)

• So what is good?o no worries about scalingo XMPP, Cron, Task Queue, Versionso integrated environmento free for most projectso really cool

Page 5: Ruby On Google App Engine 2nd Athens Ruby Me

Where is Ruby and where is Rails?Not so straightforward

• a lot but tricky• ORM through DataMapper• memcache,

actionmailer need patching

• console

What works What does not work• native extensions• activerecord

Page 6: Ruby On Google App Engine 2nd Athens Ruby Me

How do we start?You are luckier now but wait for Rails 3 

• Appengine-Jruby for the rescueo streamlines the processo fetched jruby-rack, jruby, appengine-java-skdo local servero consoleo deploy in a breeze

• Is that easy?o not at allo you need to package gems into jars (warble)o jruby rack runs below rails/sinatra/merbo Java exceptionso restart server when testing :(

• Awesome admin environment, take a look

Page 7: Ruby On Google App Engine 2nd Athens Ruby Me

Integration, control, versioning, stats, tickets all in a blink.PanosJee

Page 8: Ruby On Google App Engine 2nd Athens Ruby Me

More readingDon 't miss

• http://delicious.com/panosjee/jrubyo lots of stuff I came across about jruby/gae

• http://code.google.com/p/appengine-jruby/o don 't start without it

• http://olabini.com/blog/o major contributor

• http://www.web2py.com/o if you are serious about GAE and want a real app

• http://www.sinatrarb.com/o ideal platform for Ruby on GAE

• http://bike-races.appspot.com/o the awesome demo

Page 9: Ruby On Google App Engine 2nd Athens Ruby Me

Thank you! 

Ruby Greece is maturing!

http://6pna.com :: http://www.webz.gr