« Previous 1 2
Version 5.2 of the Ruby framework
Ticket to Ride
HTTP/2 Early Hints
HTTP/2 is becoming increasingly widespread, as a consequence of which the demand for the push feature is also growing in the Rails community. Unlike HTTP/1.1, where a web client can only fetch files from the web server using HTTP GET
, HTTP/2 also allows the web server to deliver unsolicited files actively to the web browser, which also increases the web performance of a web application.
Rails Core member Aaron Patterson has incorporated HTTP/2 into the new Rails version with the help of Eileen Uchitelle so that the web server above the Rails layer is tasked by the Rails framework with pushing stylesheets and JavaScript assets to the web browser.
This area is likely to see a lot of movement in future Rails versions. Thus far, Rails asset management is still building on the basic idea for HTTP/1.1 of sending one large file, rather than many small files that HTTP/2 can send.
Redis Cache Store
The new Redis Cache Store also comes from the Basecamp lab. With the new gem, Jeremy Daer has created a very stable and fast way to address Redis as a cache in distributed mode, which allows data to be stored on different Redis servers.
Those who rely on the Russian matryoshka doll strategy for fragment caching can look forward to an improved cache lifetime by default, and without additional work thanks to key recycling and compression.
Conclusions
Ruby on Rails 5.2 is a minor update and should integrate easily into existing Rails applications. The new version is not a revolution, but a handy set of solid improvements. Active Storage is likely to be the biggest change and optimization for most Rails users. Also on the horizon is Ruby 2.6, which is in a preview release (see the "Ruby 2.6" boxout).
Ruby 2.6
In February 2018, two highlights were lined up for the Ruby community: The 25th birthday of Ruby, which the community celebrated on Twitter with the hashtag #ruby25 , and the Ruby 2.6 preview release. For the first time a method-based just-in-time (MJIT) compiler was used. Although it does not yet deliver the big speed jumps (especially not for Rails applications), it promises the most significant performance improvement of all Ruby applications of the last few years. The boot time for such an application increases, but the goal of a Ruby 3.0 that is three times faster seems to be within reach (Project Ruby 3x3); 2019 should be very exciting for the Ruby community.
Infos
- Ruby on Rails: http://rubyonrails.org
- CarrierWave: https://github.com/carrierwaveuploader/carrierwave
- Paperclip: https://github.com/thoughtbot/paperclip
- Bootsnap: https://github.com/Shopify/bootsnap
« Previous 1 2
Buy this article as PDF
(incl. VAT)