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 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. More InformationRelated ArticlesRuby On Rails 7 Moves To No-Node Default Rails 6 Adds Action Mailbox And Parallel Testing Top 10 From Around The Web: Ruby On Rails Resources Top 10 From Around The Web: More Ruby On Rails Resources 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.
Comments
or email your comment to: comments@i-programmer.info |