The Throwdown will begin shortly and feature presentations from Aaron Patterson on the history of MRI Ruby and Nick Sieger and Brian Ford on the histories of JRuby and Rubinius respectively. The agenda will cover introductions and histories, ecosystems, tooling, concurrency, Windows support, deployment strategies and a Q&A session. Key differences discussed include MRI's C extension support, JRuby's access to Java libraries, and Rubinius' custom VM and JIT compiler.
22. GC::Profiler.result
Invoke User Size Total Size Total GC Time
Index
Time(sec) (byte) (byte) Object (ms)
1 0.016 301640 572600 14315 1.035
#RubyThrowdown
28.
data
=
[]
M.times
do
|m|
Thread.new
do
N.times
do
|n|
data
<<
m
*
n
end
end
end
#RubyThrowdown
29. Agenda
Introduction & History
Ecosystem
Tooling
Concurrency
Windows
Deployment
Summary of the Good Bits
Q&A
#RubyThrowdown
30. Rubinius & Windows™
Rubinius 2.0
1.8.7 / 1.9.2
Full concurrency
C-extension support
Native Installer
#RubyThrowdown
31. MRI & Windows™
Ruby Installer (http://rubyinstaller.org/)
Rails Installer (http://railsinstaller.org/)
Some C based gems may not work
#RubyThrowdown
32. JRuby & Windows™
Just works
Installer: with/without JVM, 32- or 64-bit
Only Ruby w/ 64-bit Win32OLE
#RubyThrowdown
33. Agenda
Introduction & History
Ecosystem
Tooling
Concurrency
Windows
Deployment
Summary of the Good Bits
Q&A
#RubyThrowdown
34. MRI Deployment
For Ruby: apt, rpm, dpkg
For Rails: Capistrano, Vlad
Web Servers: Unicorn, etc
#RubyThrowdown
35. Rubinius Deployment
Identical to MRI
but full concurrency
Passenger
Unicorn or Rainbows!
WEBrick
#RubyThrowdown
36. JRuby Deployment
Ruby servers WAR files Cloud
WEBrick GlassFish EY AppCloud
Trinidad Tomcat AppEngine
TorqueBox JBoss AWS EB
#RubyThrowdown
37. Pick a Server
blog: http://ey.io/webservers
Trinidad Mizuno
Kirk TorqueBox
#RubyThrowdown
38. Distribute your app
https://github.com/nicksieger/warbler
INSTALL gem install warbler
#RubyThrowdown
39. $ cd recordstore
$ warble executable war
rm -f recordstore.war
Creating recordstore.war
$ java -jar recordstore.war
<server starts on port 8080>
#RubyThrowdown
47. #rbxday
Friday, August 5, 2011
A global day of Rubinius performance testing, bug reporting,
community strengthening and super awesome fun times
Let’s make it a party!
http://rbxday.rubini.us
48. Want More?
Upcoming Webinars
August 18 - Rubinius
August 25 - JRuby
#RubyThrowdown