SlideShare a Scribd company logo
1 of 31
Sleep Better with TorqueBox
                                                 Lance Ball
                                              Ruby Hoedown
Creative Commons BY-SA 3.0
                                             September 2012
• @lanceball
• github.com/lance
TorqueBox
What is an
Application Server?
No Java!
No Java!
"We write Java so you don't have to."
No XML!
Features
Features
• Rack
Features
• Rack
• Scheduled Jobs
Features
• Rack
• Scheduled Jobs
• Background Processing
Features
• Rack
• Scheduled Jobs
• Background Processing
• Long-running Daemons
Features
• Rack
• Scheduled Jobs
• Background Processing
• Long-running Daemons
• Caching
Features
• Rack
• Scheduled Jobs
• Background Processing
• Long-running Daemons
• Caching
• Messaging
Features
• Rack
• Scheduled Jobs
• Background Processing
• Long-running Daemons
• Caching
• Messaging
• XA Transactions
Features
• Rack
• Scheduled Jobs
• Background Processing
• Long-running Daemons
• Caching
• Messaging
• XA Transactions
• WebSockets
Features
• Rack
• Scheduled Jobs
• Background Processing
• Long-running Daemons
• Caching
• Messaging
• XA Transactions
• WebSockets
• Clustering
The Customer
(Live Coding Demo)
twitter                                email



Background              Service      Scheduled
 Processor                 queue
                                        Job


                    Msg. Processor
                         queue



    queue
                      Stomplet
     Rails
                        web
                       sockets




             Bill
Friends of
TorqueBox
Immutant
• immutant.org
• #immutant on freenode
• @immutant




      Clojure
(more live coding)
AS.js
• dynjs.org
• #asjs & #dynjs on freenode
Escalante
• escalante.io
• @escalanteio
• #escalante on freenode
0.1. Escalante
           0 re
                  leas
• escalante.io
                      ed
• @escalanteio          this
• #escalante on freenode       mo
                                 nth
                                    !
TorqueBox Roadmap
• Current version: 2.1.1
• Future:
  • Dynamic components
  • Better background task visibility
  • Console
  • torquebox-lite
Resources
• Demo app:
  • github.com/lance/
    rubyhoedown-2012
• torquebox.org
• @torquebox
• #torquebox on freenode
Obrigado,
@tcrawley!
http://www.flickr.com/photos/coldtaxi/426162862/

More Related Content

What's hot

Mongrel Handlers
Mongrel HandlersMongrel Handlers
Mongrel Handlers
nextlib
 

What's hot (18)

Rails 3.1
Rails 3.1Rails 3.1
Rails 3.1
 
Dev-Friendly Ops
Dev-Friendly OpsDev-Friendly Ops
Dev-Friendly Ops
 
Different ways of integrating React into Rails - Mikhail Bortnyk
Different ways of integrating React into Rails - Mikhail BortnykDifferent ways of integrating React into Rails - Mikhail Bortnyk
Different ways of integrating React into Rails - Mikhail Bortnyk
 
[CocoaHeads Tricity] Michał Zygar - Consuming API
[CocoaHeads Tricity] Michał Zygar - Consuming API[CocoaHeads Tricity] Michał Zygar - Consuming API
[CocoaHeads Tricity] Michał Zygar - Consuming API
 
Put Your Thinking CAP On
Put Your Thinking CAP OnPut Your Thinking CAP On
Put Your Thinking CAP On
 
Day 1 - Intro to Ruby
Day 1 - Intro to RubyDay 1 - Intro to Ruby
Day 1 - Intro to Ruby
 
Sinatra Introduction
Sinatra IntroductionSinatra Introduction
Sinatra Introduction
 
Mongrel Handlers
Mongrel HandlersMongrel Handlers
Mongrel Handlers
 
Ruby on Rails & PostgreSQL - v2
Ruby on Rails & PostgreSQL - v2Ruby on Rails & PostgreSQL - v2
Ruby on Rails & PostgreSQL - v2
 
Java 8: Nashorn & avatar.js di Enrico Risa al JUG Roma
Java 8: Nashorn & avatar.js di Enrico Risa al JUG RomaJava 8: Nashorn & avatar.js di Enrico Risa al JUG Roma
Java 8: Nashorn & avatar.js di Enrico Risa al JUG Roma
 
Functional Programming in Clojure
Functional Programming in ClojureFunctional Programming in Clojure
Functional Programming in Clojure
 
A year in Production with the Hashistack
A year in Production with the HashistackA year in Production with the Hashistack
A year in Production with the Hashistack
 
Building Immutable Machine Images with Packer and Ansible
Building Immutable Machine Images with Packer and AnsibleBuilding Immutable Machine Images with Packer and Ansible
Building Immutable Machine Images with Packer and Ansible
 
I18nize Scala programs à la gettext
I18nize Scala programs à la gettextI18nize Scala programs à la gettext
I18nize Scala programs à la gettext
 
Woo: Writing a fast web server @ ELS2015
Woo: Writing a fast web server @ ELS2015Woo: Writing a fast web server @ ELS2015
Woo: Writing a fast web server @ ELS2015
 
Day 9 - PostgreSQL Application Architecture
Day 9 - PostgreSQL Application ArchitectureDay 9 - PostgreSQL Application Architecture
Day 9 - PostgreSQL Application Architecture
 
Thrift
ThriftThrift
Thrift
 
Skinny Framework Progress Situation
Skinny Framework Progress SituationSkinny Framework Progress Situation
Skinny Framework Progress Situation
 

Viewers also liked (6)

TorqueBox - Ruby Hoedown 2011
TorqueBox - Ruby Hoedown 2011TorqueBox - Ruby Hoedown 2011
TorqueBox - Ruby Hoedown 2011
 
DataMapper on Infinispan
DataMapper on InfinispanDataMapper on Infinispan
DataMapper on Infinispan
 
Torquebox Asheville.rb April 2011
Torquebox Asheville.rb April 2011Torquebox Asheville.rb April 2011
Torquebox Asheville.rb April 2011
 
Complex Made Simple: Sleep Better With TorqueBox
Complex Made Simple: Sleep Better With TorqueBoxComplex Made Simple: Sleep Better With TorqueBox
Complex Made Simple: Sleep Better With TorqueBox
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome Economy
 
The Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsThe Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post Formats
 

Similar to Torquebox rubyhoedown-2012

[.Net开发交流会][2010.06.19]better framework better life(吕国宁)
[.Net开发交流会][2010.06.19]better framework better life(吕国宁)[.Net开发交流会][2010.06.19]better framework better life(吕国宁)
[.Net开发交流会][2010.06.19]better framework better life(吕国宁)
Shanda innovation institute
 
Web Development using Ruby on Rails
Web Development using Ruby on RailsWeb Development using Ruby on Rails
Web Development using Ruby on Rails
Avi Kedar
 
Messaging, interoperability and log aggregation - a new framework
Messaging, interoperability and log aggregation - a new frameworkMessaging, interoperability and log aggregation - a new framework
Messaging, interoperability and log aggregation - a new framework
Tomas Doran
 
Ruby on Rails : 簡介與入門
Ruby on Rails : 簡介與入門Ruby on Rails : 簡介與入門
Ruby on Rails : 簡介與入門
Wen-Tien Chang
 
T4T Training day - NodeJS
T4T Training day - NodeJST4T Training day - NodeJS
T4T Training day - NodeJS
Tim Sommer
 

Similar to Torquebox rubyhoedown-2012 (20)

[.Net开发交流会][2010.06.19]better framework better life(吕国宁)
[.Net开发交流会][2010.06.19]better framework better life(吕国宁)[.Net开发交流会][2010.06.19]better framework better life(吕国宁)
[.Net开发交流会][2010.06.19]better framework better life(吕国宁)
 
Better Framework Better Life
Better Framework Better LifeBetter Framework Better Life
Better Framework Better Life
 
Scaling with swagger
Scaling with swaggerScaling with swagger
Scaling with swagger
 
Better framework, better life
Better framework, better lifeBetter framework, better life
Better framework, better life
 
Devignition 2011
Devignition 2011Devignition 2011
Devignition 2011
 
Chirp 2010: Scaling Twitter
Chirp 2010: Scaling TwitterChirp 2010: Scaling Twitter
Chirp 2010: Scaling Twitter
 
Stackato v2
Stackato v2Stackato v2
Stackato v2
 
Web Development using Ruby on Rails
Web Development using Ruby on RailsWeb Development using Ruby on Rails
Web Development using Ruby on Rails
 
Why I Love TorqueBox (And Why You Will Too)
Why I Love TorqueBox (And Why You Will Too)Why I Love TorqueBox (And Why You Will Too)
Why I Love TorqueBox (And Why You Will Too)
 
ModernWeb 2019: Why we replace TypeScript with Dart
ModernWeb 2019: Why we replace TypeScript with DartModernWeb 2019: Why we replace TypeScript with Dart
ModernWeb 2019: Why we replace TypeScript with Dart
 
Messaging, interoperability and log aggregation - a new framework
Messaging, interoperability and log aggregation - a new frameworkMessaging, interoperability and log aggregation - a new framework
Messaging, interoperability and log aggregation - a new framework
 
Inside Wordnik's Architecture
Inside Wordnik's ArchitectureInside Wordnik's Architecture
Inside Wordnik's Architecture
 
Actors and Threads
Actors and ThreadsActors and Threads
Actors and Threads
 
Ruby on Rails : 簡介與入門
Ruby on Rails : 簡介與入門Ruby on Rails : 簡介與入門
Ruby on Rails : 簡介與入門
 
Be faster then rabbits
Be faster then rabbitsBe faster then rabbits
Be faster then rabbits
 
Scaling Social Games
Scaling Social GamesScaling Social Games
Scaling Social Games
 
Ship It ! with Ruby/ Rails Ecosystem
Ship It ! with Ruby/ Rails EcosystemShip It ! with Ruby/ Rails Ecosystem
Ship It ! with Ruby/ Rails Ecosystem
 
20120802 timisoara
20120802 timisoara20120802 timisoara
20120802 timisoara
 
T4T Training day - NodeJS
T4T Training day - NodeJST4T Training day - NodeJS
T4T Training day - NodeJS
 
Polyglot Grails
Polyglot GrailsPolyglot Grails
Polyglot Grails
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 

Torquebox rubyhoedown-2012

Editor's Notes

  1. How many of you have seen a TB preso?\nIs anyone here using TB?\nMy goal is to show you how simple TB is to use, and maybe convince more of you to try it.\n
  2. \n
  3. What is TB? Essentially, it is...\n...and a set of gems...\n...to provide an application server for ruby apps.\nFree Software - LGPL\nSupported product - "tech preview"\n\n
  4. We're integrating with a java AS, so it has to be JRuby\nBut why would you use JRuby in general?\nDisregarding being able to access java libraries\n
  5. I'm not knocking MRI, there is a reason for the GIL\nThat's why we see the 'process pool' approach\n
  6. Thousands of man-hours in GC\n
  7. TB benchmarks, but here to show trends\nProcess based vs. thread based\nResource Exhaustion\n
  8. I've been using the term...\nIn the ruby world it’s something that responds to web requests...\nI mean in the java sense\nEven though it's based on a Java AS...\n
  9. \n
  10. \n
  11. Out of the box...\ninstead of just talking about these features...\n
  12. Out of the box...\ninstead of just talking about these features...\n
  13. Out of the box...\ninstead of just talking about these features...\n
  14. Out of the box...\ninstead of just talking about these features...\n
  15. Out of the box...\ninstead of just talking about these features...\n
  16. Out of the box...\ninstead of just talking about these features...\n
  17. Out of the box...\ninstead of just talking about these features...\n
  18. Out of the box...\ninstead of just talking about these features...\n
  19. Out of the box...\ninstead of just talking about these features...\n
  20. A scenario\nBill is an ideas man\n
  21. \n
  22. 5 processes to manage, each with some app config\nclustering (subcomponents)\n
  23. \n
  24. Can interoperate with TorqueBox via messaging\nOverlay\nThe AS we've been using...\nDemo!\n
  25. \n
  26. A temporary name...\n
  27. Currently in the works...\n
  28. \n\n
  29. torquebox docs, screencasts\nsausage, help\n\n
  30. \n
  31. Thank organizers as well - Akita & team\nStickers + T-Shirts\nLove to chat...\n
  32. repeat questions\n