概要
今回参加したイベントはこちらになります
到着!
— しいたけ (@shitake4) September 26, 2019
初techplay#railsbeerbash
最近、Railsの勉強会に参加できてなかったので、最新情報とかいろいろとキャッチアップできればな〜と思い参加しました
- 概要
- 参加したセッション
- 1. 2週間で Rails 5.1 > Rails 6 タイムアタックチャレンジ
- 2. Multi DBを実戦投入するときの落とし穴
- 3. Railsパネルディスカッション
- LTのスライド
参加したセッション
- 2週間で Rails 5.1 > Rails 6 タイムアタックチャレンジ
- Multi DBを実戦投入するときの落とし穴
- Railsパネルディスカッション
1. 2週間で Rails 5.1 > Rails 6 タイムアタックチャレンジ
参加にあたって、特に気になっていたところ
- アップデートに関して気を付けることは何か?
- ボトルネックになりそうなことは何か?
1. アップデートに関して気を付けることは何か?
DEPRECATION WARNING
はできるだけ消す- backportして
- 先にリリースで安心感を得られる
- 主要機能は、手動で動作確認
- 決済機能など
2. ボトルネックになりそうなことは何か?
- リリースノートは読んでおき、脳内インデックスを作っておくとスピードが増す
WARNING
を消す際に必要な作業
感想
Railsアップグレードする場合は、
- なるべく小さくリリースしていくのが大事
- 主要機能はやはり手動で動作確認するの大事
なんだと思いました
2. Multi DBを実戦投入するときの落とし穴
www.slideshare.net
参加にあたって、特に気になっていたところ
- 投入する上でのハマりどころ
1. 投入する上でのハマりどころ
primary
にトランザクション貼っているかreplica
に貼っているかを意識する必要がある- 便利なmiddlewareのハマりどころ
- HTTPメソッドにもとづいて read/writeを自動で決定するのが、不適切な場合がある
- middlewareは使わず、
around_action
で行う
- middlewareは使わず、
- HTTPメソッドにもとづいて read/writeを自動で決定するのが、不適切な場合がある
6.0.0
のdelay機能は曲者- 書き込みDBにアクセスしたあとGET/HEADも書き込み用DBにつなぐ
- 書き込み用DBにつないでいる状態で、書き込み系クエリを投げるとエラーが発生する
- 書き込みDBにアクセスしたあとGET/HEADも書き込み用DBにつなぐ
感想
MultiDBは結構ハマりどころが多そうだったので、非常に学びがあった
3. Railsパネルディスカッション
参加にあたって、特に気になっていたところ
- Rails 6でうれしい機能は?
- Railsでマイクロサービスはどうやってやるのか?
- Railsと技術的負債の付き合い方は?
1. Rails 6でうれしい機能は?
- MultiDBが GitHub - eagletmt/switch_point: Switching database connection between readonly one and writable one を使用しなくてもいいのがうれしい
- enumのnegative scope
- Action Cableのテストが標準化されていること
- 並列testが標準でできること
2. Railsでマイクロサービスはどうやってやるのか?
- Railから大きくハズレない
- Railに乗っているところが巨大化するものは問題ない
- 認証周りなど境界づけられたコンテキストごとにマイクロサービスして巨大化したコードベースを分割する
3. Railsと技術的負債の付き合い方は?
- 依存ライブラリがRails 6に対応していないとアップグレードするのが、だいぶつらい
- テストカバレッジが高いことがアップグレードを助けてくれる
- バグを減らす日を設けて、継続的に負債を返却している
- Dependabot で継続的にGemのバージョンアップをしている
- モデルのレイヤをモデル層とデータ層に分割している
感想
各社の工夫の部分だったり、Railsで大きいサービスを作る場合の設計の指針はどうすればいいのか?など非常に学びがありました
LTのスライド
- スライド/2019/09/26/Rails Developers Beer Bash 〜Railsのトレンドとこれから〜/GitHub Actionsで複数DBテスト #railsbeerbash - esa-pages.io
- Beyond Active Record - Speaker Deck
今日一日の感想
上記セッション以外にも懇親会 & LT大会
もあったのですが、翌日に作業があったため、途中で退室しました 💨
久しぶりのRailsの勉強会だったので、非常に楽しめました!
また機会があれば、参加したいです 💪