[Ruby Association Activity Report]「socketライブラリへのHappy Eyeballs Version 2 (RFC8305)の導入」
Ruby Association Activity Report https://www.ruby.or.jp/ja/news/20240724
400万人が利用する会社訪問アプリ
株式会社エス・エム・エス / プロダクト開発部
株式会社エス・エム・エス勤務 自分がコードを書いた分、少しでも世の中が良くなるような仕事がしたいと考えています。 地域RubyコミュニティAsakusa.rbメンバー。 RubyKaigi 2021 Takeout、RubyKaigi2022-2024登壇
RubyKaigi 2024 follow up https://rhc.connpass.com/event/320709/ Improve Socket.tcp #11187 https://github.com/ruby/ruby/pull/11187
Ruby Association Activity Report https://www.ruby.or.jp/ja/news/20240724
#### 登壇概要 https://rubykaigi.org/2024/presentations/coe401_.html#day1 #### 発表資料 https://speakerdeck.com/coe401_/an-adventure-of-happy-eyeballs #### Pull Request https://github.com/ruby/ruby/pull/9374
◼︎ プロジェクト概要 https://www.ruby.or.jp/ja/news/20231031 Rubyのsocketライブラリにおいて、リモートサーバと接続したクライアントソケットを返すメソッドが用意されている。これらには、以下の二つの課題がある。 (1) アドレス解決の段階において: DNSサーバに対してアドレスファミリごとに同期的に問い合わせを行い、すべてのアドレスが解決できるまで動作を停止する (2) 接続試行の段階において: IPアドレスが宛先ホストに接続しようとして時間がかかっている間、プログラムが停止し、他の解決済みIPアドレスで接続試行できない RFC8305ではこうした課題について、(1)に対してはアドレスファミリごとのDNSクエリ送信を非同期的に行うこと、 (2)に対しては解決済みのIPアドレスを利用して順次接続試行を行うことによって解消し、より良い接続性を担保するHappy Eyeballs Version2アルゴリズムを規定している。 このプロジェクトでは、RubyのsocketライブラリにHappy Eyeballs Version 2を導入することにより、上記の課題の解決を目指す。
- 技術による社会課題の解決 - 大学生になってコンピュータの勉強をする
学習管理システム「Catallog」開発 - 企画チームとの連携による要件定義、仕様作成、デザインレビュー、テーブル・API設計、バックエンド実装・テスト、コードレビュー - チーム内の見守り (GitHub Pulseの観察、プロジェクトの全体の情報共有) (週1) - サービスのメトリクス観察、課題の洗い出し (週1)
【業務内容】 ・労務管理(従業員 約100名) ・商品在庫管理(約600台/月) ・資材入荷/検収(約1000件/月) ・従業員問合せ対応 ・事業所運営に関わる庶務全般
Ruby Association Activity Report https://www.ruby.or.jp/ja/news/20240724