https://increments.connpass.com/event/310090/
https://increments.connpass.com/event/310090/
技術本部 Sansan Engineering Unit Nayose グループでエンジニアをしている冨田です。業務では、Ruby on Rails(以降 Rails)を使って名寄せサービスを開発しています。 今回は、Rails などの Ruby コード内のイベント計測に使われる、Active Support Instrumentation について解説します。本 API を利用することで、アプリケーション内で発生するさまざまなイベントを計測し、パフォーマンス改善やデバッグなどの調査に役立てられます。直近 Nayose グループでは、問題調査のために、特定テーブルへの SQL とその呼び出し元をロギングする用途で使いました。 次のバージョンを対象としています。 Rails 7.0.4 Active Record 7.0.4 Active Support 7.0.4 Ruby 3.1.4 以
ありがたいことに年末にメルカリの小泉さんとランチをご一緒させてもらいました。 CTO(@yutadayo)が作成した過去の失敗スライドに、リプライをいただいのがきっかけだったのですが、長らく競合事業(現ラクマ)をやっていたこともあり、きちんとお話ししたことがなく、とても学びが深かったので、ご本人に許可をいただいて、メモした内容と学びをシェアさせていただきます。 なんでメルカリに?噂ではフリルにも入社してもらえる可能性もあったとか?2007年よりミクシィに入社し、2012年の退任までCFOを務めていた その後、1年以上は他の会社の社外取締役をしたりフリーランスをしていた フリルは2012年夏リリース、メルカリは2013年春リリース 小泉さんは2013年冬にメルカリ入社 フリルのことは入社前から知っていて、2012年冬のIVSでコミュニティファクトリーの松本さんに「フリル知ってる?紹介してよ」
AIタイトルアシストなら大袈裟でも恥ずかしくない! n月刊ラムダノートVol.4, No.1の記事を読むぞ 「手を動かして学ぶストリーム処理入門」でKafkaの気持ちを理解したくなりました。 でもKafkaを使うのはめんどくさいので全部Rubyで書いてみようと思います。 実験用のデータ github.com githubに実験用のデータが置いてある。親切だ! ヘッダつきタブ区切りのテキストファイルに気象情報が書いてある。 本文を読み進めると、タブ区切りのまま使わないでJSON風のマップに変換してるようだ。 何度もデータ形式を変換する処理があるのが興味深い。 結局のところ元の情報の表現(カラムの順序)を知っている人が作るんだからタブ区切り(あるいはArray)のままでもいい気がする。 そこは本質じゃないので1ターン目にオブジェクトにしてHashに入れることにした。 require 'pp'
はじめに こんにちは、kmkntです。 本記事では、Rails 7.1で追加・変更されたメソッドについて、CHANGELOGを読んで個人的に気になったものをまとめました。 そのバージョンで目玉となるような新しい機能の追加など、大きな変更点はネット上の様々な記事で紹介されていますが、細かいメソッド周りの変更点はあまり触れられていないので、自身のキャッチアップも兼ねて整理したいというのが趣旨になります。参考になれば幸いです。 以降、7.1.3のActive Support、Active Record、Active ModelのCHANGELOGおよびRuby on Rails Guidesを参照しています。 (7.1.0から7.1.3までの変更点を含んでいます) Active Support Object#withを使うことでブロックの中でのみ有効な属性を設定できるようになりました。 clie
この記事は岩手県立大学とか、岩手の人たち Advent Calendar 2021の 8 日目の記事です! はじめに 現在、GitHub の Slack App では GitHub Discussions で Discussion やコメントが作成されたときの通知に対応していません。 そこで、GitHub Actions を使って、 Discussion の作成 Discussion へのコメントの作成 を Slack に通知するまでを記事としてまとめます。 Slack で Webhook の設定 Slack の Webhook の URL を用意しておきます。 以下の記事が参考になります。 GitHub Actions の設定 通知を受け取りたい GitHub Discussions のあるリポジトリに GitHub Actions の workflow を設定します。 workflow
概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: Rails 8 introduces a built-in rate limiting API - BigBinary Blog 原文公開日: 2024/02/13 原著者: Yedhin Kizhakkethara 参考: 週刊Railsウォッチ20240123: レート制限APIを追加 Web開発の動的な世界では、リクエストのフローを管理することがアプリケーションの応答性と信頼性を維持するうえで重要です。レート制限(rate limiting)はAPIの交通整理巡査として機能する強力な技術であり、リソースへの正当なアクセスを確保して潜在的な混乱を防ぎます。レート制限を一言で言うと、「ユーザー」「デバイス」「アプリケーション」が一定の時間枠内で許されるリクエスト数(レート)を制御することです。 本記事では、レート制限の概念を詳
「Rubyビジネスセミナー 大阪」開催報告 下記のとおり「Rubyビジネスセミナー 大阪」を開催しました。 ご来場いただきました皆様、ありがとうございました。 日時: 2024年1月29日(月) 14:45 〜 16:50 会場: BREEZE PLAZA 803+804号室 基調講演1: Better Ruby 講演者: まつもとゆきひろ(一般財団法人Rubyアソシエーション 理事長) まつもとさんの基調講演では、Rubyをもっと良くしたいをテーマにお話がありました。 講演資料 水産業をアップデートする挑戦 with Ruby 講演者: 土谷太皓(株式会社ウーオ 取締役CPO) 土谷さんからは、専門性が高く複雑なドメインの水産業において、 スタートアップがどうRubyを利用し成長しているかという お話をしていただきました。 講演資料 ピクシブにおける技術選択 講演者: 道井俊介(ピクシブ
Ruby Advent Calendar 2018の 15 日目です! 定数よ。お前はなぜそんなに難しいのか 使いやすいRubyのメソッドやクラスインスタンス変数に比べて、定数は難しいですね。 私自身、半年に一回は泣かされている弱小エンジニアのひとりです。 せっかくのアドベントの機会を借りて、このハマりがちなRuby定数の謎を徹底的に読み解いてみたいと思います12 対象としてはこんな方を想定しています。 Rubyにおけるselfの扱い、継承チェーン、メソッド探索は理解している 定数の挙動でハマったことがある この機会にマニアックな理解をしたい 参考文献としてはCRubyのソースコードに加えて、最後に列挙した数々の貴重な資料を頼らせていただきました(ぺこり)。 定数クイズ さっそくですが、定数に関する簡単な問題です。 Rubyistなら全部答えられます・・よね? まず、こんな形であちこちにM
2024年2月20日 株式会社PFU HHKB HYBRID Type-S 神奈川県相模原市のふるさと納税返礼品に新たに採用 株式会社PFU(代表取締役社長:村上 清治、以下PFU)は、Happy Hacking Keyboard(以下HHKB)が神奈川県相模原市のふるさと納税返礼品として採用されたことをお知らせいたします。 HHKBシリーズは、無駄をそぎ落とす「ミニマライズの理念」の下に、「プログラマーが生涯使える理想的なキーボード」を目指して開発されました。基本コンセプトである合理的なキー配列とコンパクトサイズを四半世紀以上変えることなく貫く一方、技術や環境の変化に合わせてキータッチやマルチプラットフォーム対応を進化させ、プログラマーやエンジニアをはじめ多くのお客様にご支持いただいております。 HHKBの製造委託工場が神奈川県相模原市に立地することから、今回、HHKBが神奈川県相模原市
概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: Rails 7.1 Store secret_key_base In Credentials For Local Environment | Saeloun Blog 原文公開日: 2023/08/11 原著者: Gowsik Vivekanandan サイト: Saeloun Blog この変更は、Railsのsecretsをcredentialsに移行する一連の取り組みの一環です。 参考: Add credentials using a generic EncryptedConfiguration class by dhh · Pull Request #30067 · rails/rails RailsのcredentialsはRails 5.2で導入されました。Rails 7.1では従来のsecretsが非推奨となり、代
多様性を重視したアジャイル開発をRubyと共に Ruby bizグランプリ2022で大賞を受賞したShippioについて、Chief Product Officerの森 泰彦氏とSenior Backend Engineer の関口 亮一氏にお話を伺った。 〈 左:Chief Product Officerの森 泰彦氏、右:Senior Backend Engineer の関口 亮一氏 〉 国際物流プラットフォームShippio(シッピオ)は株式会社Shippioが提供する日本初のデジタルフォワーディングサービスである。 株式会社Shippioは「理想の物流体験を社会に実装する」をミッションに掲げ、貿易システムの提供と国際物流フォワーディング業務の提供を通じて、アナログな業務が多く残る、国際物流領域の課題解決に取り組んでいる。 フォワーダーとは 国際物流には3つのレイヤーのプレイヤーが存在
合同会社クアッガは、代表である斉藤がビジネスの糸口を見つけるために、農業系のベンチャー企業で働いている時に出会ったエンジニアの鶴見と2人で、2018年に設立しました。クアッガの事業の柱は、日本最大級のパンの通信販売プラットフォーム「rebake(リベイク)」。パン屋さんで売れ残った、まだ食べられるパン=「ロスパン」を、会員である消費者に予約販売するサービスです。現在、全国のパン屋さん約1100店と約16.4万人の消費者が会員登録しています。(2022年12月末時点) 2023年3月には、「rebake(リベイク)」のロスパン販売によるロス削減量が、700tを突破いたしました。 × ※左:鶴見和俊、右:斉藤優也 消費者の判断を促すことでフードロスを削減したい 食品ロスとは一般的に、「まだ食べられるにもかかわらず、なんらかの理由で廃棄される食品」のことを指しています。食べ物を捨ててしまうのは、
I have this ActiveRecord query issue = Issue.find(id) issue.articles.includes(:category).merge(Category.where(permalink: perma)) And the translated to mysql query SELECT `articles`.`id` AS t0_r0, `articles`.`title` AS t0_r1, `articles`.`hypertitle` AS t0_r2, `articles`.`html` AS t0_r3, `articles`.`author` AS t0_r4, `articles`.`published` AS t0_r5, `articles`.`category_id` AS t0_r6, `articles`.`iss
はじめに インデックスヒントはパフォーマンスチューニングにおいて欠かせないものの一つです。 今回はインデックスヒントとは何か、そして実際にRailsではどのように使うのか説明していきます。 実行計画について インデックスヒントを理解するため、前提として知っておきたい実行計画について説明します。 MySQLはオプティマイザというものを使用して、いい感じに実行計画(実行するクエリの詳細)を作成しています。 この実行計画はオプティマイザが以下の統計情報を参照して作成されています。 テーブルに含まれる行数 各インデックスのサイズ(ページ数) 各インデックスのリーフページのサイズ(ページ数) 各インデックスのカーディナリティ(何種類の値が存在するか?) ここで注意しなければならないことは、実行計画はあくまで推測であり必ず最適な訳ではないことです。 場合によってはMySQLが最適だと判断したクエリが、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く