---
title: "Low-level Async IO in Ruby, Sharing Rails Sessions with Phoenix, mruby on the Raspberry Pi"
publication: "Ruby Weekly"
issue: 306
published_at: "2016-07-14"
canonical_url: "https://rubyweekly.com/issues/306"
---

Low-level Async IO in Ruby, Sharing Rails Sessions with Phoenix, mruby on the Raspberry Pi

This week's Ruby and Rails news[Read this e-mail on the Web](http://rubyweekly.com/issues/306)

Ruby WeeklyIssue 306 — July 14, 2016

Tony Arcieri[An Introduction to nio4r: Low-Level Async I/O for Ruby](https://tonyarcieri.com/a-gentle-introduction-to-nio4r)Under the hood, Rails 5’s ActionCable uses nio4r, a low level non-blocking IO library inspired by Java’s NIO. Here, its author explains how it works.


Andrew Hao[Add Phoenix to Your Rails Ecosystem with Session Sharing](http://blog.carbonfive.com/2016/07/06/rails-meet-phoenix-add-phoenix-to-your-rails-ecosystem-with-session-sharing/)If you’ve decided to give Phoenix & Elixir a try but your existing user auth is happening through a Rails app, don’t fear, here’s how to share sessions.


William Kennedy[Quickly Process API Requests with Shoryuken and SQS](https://www.sitepoint.com/quickly-process-api-requests-with-shoryuken-and-sqs/)A look at using SQS and Shoryuken to process queued requests to a third-party API.


HerokuSponsored[Reactive Ruby: Building Real-time Apps with JRuby and Ratpack](https://blog.heroku.com/reactive_ruby_building_real_time_apps_with_jruby_and_ratpack?c=7013A000000mLcUQAU&utm_campaign=Display%20-%20Endemic%20-%C2%A0Cooper%20-%C2%A0Ruby%20-%20Blog%20-%20Real-Time-JRuby-Ratpack&utm_medium=display&utm_source=cooperpress&utm_content=blog&utm_term=ruby)What if Ruby made it easy for you to write async code and real-time apps? By pairing up JRuby with Ratpack, Joe Kutner shows us that we can teach Ruby some new tricks. [Learn More.](https://blog.heroku.com/reactive_ruby_building_real_time_apps_with_jruby_and_ratpack?c=7013A000000mLcUQAU=Display%20-%20Endemic%20-%C2%A0Cooper%20-%C2%A0Ruby%20-%20Blog%20-%20Real-Time-JRuby-Ratpack=display=cooperpress=blog=ruby)

[![Heroku\](https://copm.s3.amazonaws.com/b21eb2db.png)](https://blog.heroku.com/reactive_ruby_building_real_time_apps_with_jruby_and_ratpack?c=7013A000000mLcUQAU&utm_campaign=Display%20-%20Endemic%20-%C2%A0Cooper%20-%C2%A0Ruby%20-%20Blog%20-%20Real-Time-JRuby-Ratpack&utm_medium=display&utm_source=cooperpress&utm_content=blog&utm_term=ruby)


Luiz Rogerio[Improving Rails Performance with Better Background Jobs](https://medium.com/codeminer-42/improving-rails-scalability-with-better-architecture-c102a2a0cdec)A practical look at tweaking your background jobs to scale and perform better.


Glenn Goodrich[Using mruby on the Raspberry Pi](https://www.sitepoint.com/need-a-recipe-for-mruby-flavored-raspberry-pi-just-add-h2o/)Glenn Goodrich explores the Raspberry Pi platform using mRuby and the h2o web server. Learn how to make a quick API or capture a camera image.


YouTube[JRuby+Truffle: Why it’s Important to Optimise the Tricky Parts](https://www.youtube.com/watch?v=b1NTaVQPt1E)In an hour long talk, Oracle’s Chris Seaton shows off the Truffle project, a research project that aims to provide a significantly faster alternative runtime for JRuby.


Jobs

- [Ruby on Rails Engineer at Instacart (San Francisco)](https://www.instacart.com/engineering/ruby?utm_source=ruby-weekly-2016-07-14)Less than 2% of US grocery spend last year was online. We're going to change that. Come work with us on fun, challenging problems and have a huge impact. Instacart
- [Senior Back-end Engineer (Ruby)](http://www.tooploox.com/jobs#af36284c-c71a-4454-bbbc-b42929634e28?utm_source=rubyweekly&utm_medium=email)Enjoy building DSLs and microservices? Familiar with or interested in CQRS and Event Sourcing? Together, let's bring the news and media industries into a new age of data-driven business decisions. Tooploox
- [Get 5+ Engineering Job Offers in 1 Week](https://hired.com/?utm_source=newsletters&utm_medium=petercooperpress&utm_campaign=q3-16-rubyweekly)With Hired, companies apply to hire you - get salary and equity offers before you interview from companies like Facebook, Postmates, Square Hired.com

In brief

- [Bundler Gets a Redesigned Homepage](http://bundler.io/?utm_source=rubyweekly&utm_medium=email) news
- [A Rails Webconsole DNS Rebinding Vulnerability](https://benmmurphy.github.io/blog/2016/07/11/rails-webconsole-dns-rebinding/?utm_source=rubyweekly&utm_medium=email) news Ben Murphy
- [Rails 4.2.7 and 4.1.16 Released](http://weblog.rubyonrails.org/2016/7/13/Rails-4-2-7-and-4-1-16-have-been-released/?utm_source=rubyweekly&utm_medium=email) news 
Due to the release of Rails 5, this is probably going to be the last release of Rails 4.1. Rafael França
- [How to Deploy a Rails App on Heroku with SSL from DNSimple](https://www.juanitofatas.com/blog/2016/07/12/rails_app_on_heroku_with_ssl_from_dnsimple?utm_source=rubyweekly&utm_medium=email) tutorial Juanito Fatas
- [How to Dockerize a Rails 5, Postgres, Redis, Sidekiq and ActionCable App](http://nickjanetakis.com/blog/dockerize-a-rails-5-postgres-redis-sidekiq-action-cable-app-with-docker-compose?utm_source=rubyweekly&utm_medium=email) tutorial Nick Janetakis
- [The Essentials of Cache Expiration in Rails](http://sorentwo.com/2016/07/11/essentials-of-cache-expiration-in-rails.html?utm_source=rubyweekly&utm_medium=email) tutorial Parker Selbert
- [[Guide\] A Primer for Using Ruby in Production](http://info.appneta.com/a-primer-to-using-ruby-in-production.html?Ref__c=20642) tutorial 
Learn how your Ruby app can meet the performance demands of modern webapps with this free guide. [Download Now.](http://info.appneta.com/a-primer-to-using-ruby-in-production.html?Ref__c=20642) AppNeta APMSponsored
- [Deploying ActionCable on Heroku with Sidekiq](http://willschenk.com/deploying-actioncable-on-heroku/?utm_source=rubyweekly&utm_medium=email) tutorial Will Schenk
- [Implementing Full-Text Search in Rails with Postgres](https://www.viget.com/articles/implementing-full-text-search-in-rails-with-postgres?utm_source=rubyweekly&utm_medium=email) tutorial 
Full-text search is among the many powerful features in Postgres. Here’s how to use the feature from Rails. Ryan Stenberg
- [5 Tips for Writing a Legible Regexp](http://aaronlasseigne.com/2016/07/08/5-tips-for-writing-a-legible-regexp/?utm_source=rubyweekly&utm_medium=email) tutorial Aaron Lasseigne
- [Writing A Microservice in Ruby](https://blog.codeship.com/writing-microservice-in-ruby/?utm_source=rubyweekly&utm_medium=email) tutorial Pierpaolo Frasa
- [Capybara: Taming the Hydrochoerus](https://medium.com/@jaflebol/capybara-taming-the-hydrochoerus-8fcd28d70787?utm_source=rubyweekly&utm_medium=email) tutorial 
Some tips for Capybara users who want to get better at integration testing. Jason Fleetwood-Boldt
- [Writing A (Very Basic) Shell in 25 Lines of Ruby Code](http://www.blackbytes.info/2016/07/writing-a-shell-in-ruby/?utm_source=rubyweekly&utm_medium=email) tutorial Jesus Castello
- [A Brief Introduction to ActiveRecord's Methods for Beginners](https://prograils.com/posts/active-record-brief-introduction-for-beginners?utm_source=rubyweekly&utm_medium=email) tutorial Marcin Pakula
- [How To: Rails Image Uploading with Dragonfly](http://code.tutsplus.com/tutorials/rails-image-upload-using-dragonfly--cms-26179?utm_source=rubyweekly&utm_medium=email) tutorial Kingsley Silas Chijioke
- [Building a Customer Service Chat App with Rails 5 Action Cable and SMS](https://www.nexmo.com/blog/2016/07/14/building-customer-service-chat-rails-5-action-cable-sms-dr/?utm_source=rubyweekly&utm_medium=email) tutorial 
Uses the Nexmo SMS API. Cristiano Betta
- [A 6 Minute Walkthrough of Configuring ActionCable](https://www.driftingruby.com/episodes/actioncable-part-1-configuration-and-basics?utm_source=rubyweekly&utm_medium=email) video Drifting Ruby
- [A Look at Content Management Systems in Rails](https://www.sitepoint.com/a-look-at-content-management-systems-in-rails/?utm_source=rubyweekly&utm_medium=email) opinion 
Quick pros and cons of 5 different Rails CMSes. Kingsley Silas
- [The Show Goes on Smoothly for Comedy Works Denver with RubyAppCare.](http://www.rubyappcare.com/blog/2016-06-23-show-goes-on-smoothly-for-comedy-works?utm_source=rubyweekly&utm_medium=email) tools 
RubyAppCare's monthly maintenance plans help Comedy Works Denver to grow and evolve their Ruby on Rails app. RubyappcareSponsored
- [jb: A Simple and Fast JSON API Template Engine for Rails](https://github.com/amatsuda/jb?utm_source=rubyweekly&utm_medium=email) code Akira Matsuda
- [Secure Headers: Security Related Headers All in One Gem](https://github.com/twitter/secureheaders?utm_source=rubyweekly&utm_medium=email) code 
Bring Content Security Policy, HTTP Strict Transport Security, X-XSS-Protection and more to your Rack apps. Twitter

Curated by [Peter Cooper](https://twitter.com/peterc) and [Glenn Goodrich](https://twitter.com/ruprict), and published by [Cooperpress](https://cooperpress.com/).
Send feedback by simply replying to this mail.
Want to sponsor an issue? See our [media kit.](https://cooperpress.com/mediakit)
Want to post a job? Email us or [use our self-serve system.](https://booking.cooperpress.com/jobs)

[Unsubscribe](*|UNSUB|*) | [Change email address](*|UPDATE_PROFILE|*) | [Read this issue on the Web](http://rubyweekly.com/issues/306)

© Cooperpress Ltd. Office 30, Lincoln Way, Louth, LN11 0LS, UK
[Email policy](https://cooperpress.com/spam.html) [Privacy policy](https://cooperpress.com/privacy.html)
