Download - How to sneak clojure into your rails shop
![Page 1: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/1.jpg)
HOW TO SNEAK CLOJURE INTO YOUR RAILS SHOP
...and Improve Your Rails Hosting Along the Way
![Page 2: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/2.jpg)
ABOUT ME
• Joshua Ballanco
• Live in Ankara, Turkey
• Chief Scientist at Burnside Digital
• We do Clojure
![Page 3: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/3.jpg)
IF THIS WAS 2006...
HOW TO SNEAK RAILS INTO YOUR JAVA SHOP
![Page 4: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/4.jpg)
LEARN FROM RAILS
• Better to ask forgiveness than permission
• Use Clojure whenever it’s the best tool for the job
• ...and even when it’s just the right tool for the job
• Don’t be afraid to show off!
![Page 5: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/5.jpg)
STEP 1: JRUBY
• Convince your Rails guys to use JRuby:
• Better tooling
• Better performance (in many cases)
• Java ecosystem
• Lots of hosting options
![Page 6: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/6.jpg)
STEP 2: TORQUEBOX
• Stupid Simple Deployment: torquebox deploy && torquebox run
• JBoss strength and stability
• All the bells and whistles baked right in
• HornetQ for queueing, workers
• Infinispan for shared memory cache
• Quartz for scheduling
![Page 7: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/7.jpg)
STEP 3: IMMUTANT OVERLAY
• Immutant is TorqueBox’s Clojure Counterpart (and so much more!)
• lein immutant install && lein immutant overlay
• Comes with: JBoss, Immutant, TorqueBox, and JRuby
• set some environment variables, then...
• torquebox deploy
• lein immutant run – Runs deployed Clojure and Ruby apps
![Page 8: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/8.jpg)
STEP 4: OPENSHIFT
• From Red Hat
• Like Heroku, but open source (and you have ssh access)
• Deploy with a git push
• Use the ployglot-openshift-quickstart (http://github.com/)
• Deploy Ruby and Clojure based applications to the same instance
![Page 9: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/9.jpg)
STEP 5: MAKE CLOJURE AND RUBY TALK
• HornetQ + TorqueBox/Immutant messaging libraries
• Infinispan + TorqueBox/Immutant caching libraries
• Higher-level abstractions
(keep an eye on http://blogs.burnsidedigital.com)
![Page 10: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/10.jpg)
STEP 6: SHOW OFF
• Once it’s working, tell everyone why its so great!
• Sends alerts and receives confirmation when an alert is read
• Manage users, groups, organizations, permissions, etc.
• Separation of concerns improves stability and scale
![Page 11: How to sneak clojure into your rails shop](https://reader033.vdocuments.mx/reader033/viewer/2022060108/554f5f9fb4c905c8088b48f8/html5/thumbnails/11.jpg)
THANK YOU!
Joshua Ballanco
Burnside Digitalhttp://www.burnsidedigital.com