Ruby On Rails Adds Kamal And Thruster Support
Written by Kay Ewbank   
Tuesday, 17 December 2024

Ruby on Rails 8 has been released. The new version comes preconfigured with Kamal 2 for application deployment, a new proxy called Thruster, and a trio of SQLite database-backed adapters named Solid Cable, Solid Cache, and Solid Queue.

Ruby on Rails is a web-application framework written in Ruby. It is intended for creating database-backed web apps using the model–view–controller framework.

rails logo

Rails 8 comes preconfigured with Kamal 2 making it easier to deploy applications in different situations from a cloud VM or your own hardware. Kamal works by creating a fresh Linux box that it turns into an application or accessory server with just a single "kamal setup" command. The Ruby on Rails team says this means you'll be ready to go into production in under two minutes.

Rails already came with a tuned Dockerfile for turning applications into a production-ready container image. In Rails 8, this Dockerfile has been upgraded to include a new proxy called Thruster, which sits in front of the Puma web server to provide X-Sendfile acceleration, asset caching, and asset compression.

Kamal 2 also includes a bespoke proxy that provides fast zero-downtime deploys, automated SSL certificates via Let's Encrypt, and support for multiple applications on a single server without any complicated configuration.

Another area to have been improved is the need for accessory services. Previous versions of Rails needed either MySQL or PostgreSQL as well as Redis to take full advantage of all its features, like jobs, caching, and WebSockets. Now all of it can be done with SQLite through three new database-backed adapters named Solid Cable, Solid Cache, and Solid Queue.

The Rails developers say the change has been made in recognition that disks are now fast enough to avoid the need for RAM for many tasks.  Solid Cable replaces the need for Redis to act as the pubsub server to relay WebSocket messages from the application to clients connected to different processes. It uses fast polling, but it's still almost as quick as Redis, when run through the same server on SQLite. Solid Cache is the second adapter. It replaces the need for either Redis or Memcached for storing HTML fragment caches, and allows for a larger and cheaper cache thanks to its use of disk storage rather than RAM storage.

The final element, Solid Queue replaces the need for Redis along with a separate job-running framework, like Resque, Delayed Job, or Sidekiq, for most people. The Rails team say Solid Queue has virtually all the features you could want from a modern job queuing system. Including robust concurrency controls, failure retries and alerting, and recurring job scheduling.

The new version also has Propshaft as the new default asset pipeline, replacing the old Sprockets system, though Sprockets will continue to be supported for existing applications.

Rails 8 is available for download now.

rails logo

More Information

Ruby On Rails

Related Articles

Ruby On Rails 7 Moves To No-Node Default

Rails 6 Adds Action Mailbox And Parallel Testing

Ruby On Rails Survey

Top 10 From Around The Web: Ruby On Rails Resources

Top 10 From Around The Web: More Ruby On Rails Resources

Ruby On Rails Reaches 5.0

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


Gifts For Geeks 2024
22/11/2024

Are you ready for Thanksgiving, when overeating remorse and a surfeit of being thankful causes the unsettling thought that there are only four weeks till the Xmas break? So here is a mix of weird [ ... ]



RAG from Scratch
10/12/2024

The "RAG from Scratch" tutorial by Langchain coupled with the "RAG playground" are two great educational resources that will help you kickstart your journey with RAG.


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info