The entire TorqueBox team is proud to announce the immediate availability of TorqueBox v2.0.0.
- Download TorqueBox 2.0.0 (ZIP)
- Browse HTML manual
- Browse JavaDocs
- Browse Gem RDocs
- Download PDF manual
- Download ePub manual
What is TorqueBox?
TorqueBox is a Ruby application server built on JBoss AS7 and JRuby. In addition to being one of the fastest Ruby servers around, it supports Rack-based web frameworks, and provides simple Ruby interfaces to standard JavaEE services, including scheduled jobs, caching, messaging, and services.
What's special about 2.0.0?
This is the 2.0.0 final release, which is a major upgrade over TorqueBox 1.x. Notable inclusions in 2.0.0 include:
- JRuby 1.6.7 (with better Ruby 1.9 support)
- JBoss AS 7.1.1 (faster boot time, smaller memory footprint)
- Multi-resource distributed XA transactions
- WebSockets/STOMP
- Considerable speed & memory improvements over 1.x
What's changed since cr1?
We fixed a handful of issues reported against cr1, and gave our documentation an overhaul. Highlights in this release include:
- A brand-spankin-new production setup guide
- A chapter in the documentation covering application deployment
- Jobs & Services are now singleton by default - if you are running in a cluster
and were relying on Jobs and Services running on every node by default, you'll need
to turn off singleton support by setting
singleton: falsefor each Job or Service.
How do I migrate from 1.x to 2.0.0?
The biggest changes you'll see will be around any xml configuration changes you have made to the underlying JBoss AS server. TorqueBox 1.x was based on AS6, and 2.x is based on AS7, which is considerably different than AS6. Any changes you'll need to make to your application code and configuration should be minimal, if any. We plan on writing migration guide sometime in the next couple of weeks. In the meantime, read through the documentation, give it a try, and bug us if you have any questions or problems.
Thanks to an outstanding community
Thanks to everyone that helped us with patches, bug reports, and generally good natured support as we went through this major rewrite over the last 11 months. You guys are great! Without you, there would just be us :)
We'd especially like to thank the following folks for their code contributions to 2.0.0:
- Benjamin Anderson
- Bruno Oliveira
- Carl Hörberg
- Curtis Carter
- David Glassborow
- Gavin Stark
- Joe Kutner
- John Lynch
- Joshua Borton
- Kris Leech
- Marek Goldmann
- Mike Dobozy
- Robert Rasmussen
- Saulius Grigaitis
- Tony Collen
- penumbra
- tinylox
Issues resolved since cr1
- [TORQUE-190] - Create Documentation for Production setup of Torquebox
- [TORQUE-683] - Stomplets fails sometimes during setup
- [TORQUE-713] - TorqueBox documentation should highlight necessary postgres XA configuration changes
- [TORQUE-715] - torquebox upstart task does not properly kill standalone server when stopping the torquebox service
- [TORQUE-723] - jobs cannot load classes in a namespace
- [TORQUE-725] - Document new torquebox run options
- [TORQUE-726] - by default the Gemfile does not specify the version of torquebox, which cause bundle to bring in 1.1.1 => causes errors at runtime
- [TORQUE-728] - Log a Warning and Disable XA When We Can't Parse database.yml
- [TORQUE-729] - injection analyzer fails at startup
- [TORQUE-730] - Default Xss is too small for medium-to-large Rails apps
- [TORQUE-731] - torquebox.rb DSL no longer forwards options to services
- [TORQUE-732] - Don't Automatically Attempt XA Connections to Non-Standard Database Keys in database.yml
- [TORQUE-733] - Limit Maximum Stack Depth During Injection Analysis
- [TORQUE-736] - Upgrade to AS 7.1.1.Final
- [TORQUE-737] - Rails template (for Rails 2.x, at least) should enable torquebox_store for non-session caching (Rails.cache)
- [TORQUE-738] - Torquebox/JBoss tries to deploy netty jar as application
- [TORQUE-739] - Component configuration involving arrays don't survive full transfer to components when using torquebox.rb DSL
- [TORQUE-743] - Write a basic config/torquebox.yml with some instructional comments as part of $TORQUEBOX_HOME/share/rails/template.rb
- [TORQUE-744] - Support torquebox_init.rb in both ROOT and ROOT/config
- [TORQUE-745] - TorqueBox Session (Section 4.4) Docs Should Show Session Usage for Rack Apps and Cross-Reference Rails / Sinatra Examples
- [TORQUE-746] - TorqueBox::Infinispan::Cache not using cluster, always local
- [TORQUE-747] - Change deploy:restart deploy:stop deploy:start behaviour
- [TORQUE-749] - Clustered Jobs/Services should be singleton by default
- [TORQUE-750] - Resource Injection is befuddled