tapメソッドとは?tapの具体的な使い方の紹介
tapは『selfを引数としてブロックを評価する』『返す値はブロックの評価値ではなくself』という特徴をもつ…
tapは『selfを引数としてブロックを評価する』『返す値はブロックの評価値ではなくself』という特徴をもつ…
Procクラスはブロックをオブジェクト化するクラスです。 Procオブジェクトとは、Procクラスを利用してオ…
Rubyにおけるbegin式の一般的な利用方法はrescue節を組み合わせた例外処理です。 しかし、begin…
メソッドにブロックを渡し、渡されたブロックをメソッド内で実行する方法には以下の3つがあります。 今回は上記の各…
Procについて Procクラスはブロックをオブジェクト化するクラスです。 つまりProcオブジェクトとは、P…
nil? nil?はRubyのメソッドです。 nilの場合true、それ以外はfalseを返します。 “”(空…
present?について present?は真偽値を返すRailsのメソッドです。 nil, false, “…
N+1カウントクエリとは、取得したN件のデータそれぞれに対してcountクエリが発行される現象のことを指します…
N+1カウントクエリとは、取得したN件のデータそれぞれに対してcountクエリが発行される現象のことを指します…
前回、counter_cacheでN+1カウントクエリを解消する手順でRailsの標準機能であるcounter…
N+1カウントクエリが発生している状態とは N+1カウントクエリとは、取得したN件のデータそれぞれに対してco…
belongs_toで紐づいているActive Recordの関連付けキーで検索をしたい場合は、当該カラムの値…
分割してデータを読み込むことでメモリの消費を抑える eachはデータをすべてメモリにのせてからループ処理を実行…
CSVを分割して読み込むことでメモリの消費を抑える 【Rails】in_batches、find_in_bat…
検証環境のrubyのバージョンは2.7.1です。 通常の引数 通常の引数は以下の通りです。 メソッドで引数名を…
eachはデータをすべてメモリにのせてからループ処理を実行するため、可能性があります。 たとえば以下の例では、…
ssh-agentを利用すると、リモートサーバに秘密鍵をコピーしなくてもローカル環境の秘密鍵の情報を利用できま…
サーバが重いときのボトルネックの見つけ方と対応方法について紹介します。 ボトルネックの種類 ボトルネックには以…
行ロックを利用してレコードを参照する方法をロッキングリードと呼びます。ロッキングリードを利用することで参照レコ…
MySQLのデータベースエンジンにはMyISAMとInnoDBがあります。 InnoDBにはレコード単位のロッ…
InnoDBはMySQLのデータベースエンジンの1つです。InnoDBの行ロックには共有ロック(Sロック)と排…
pluckやmapを利用することで、Active Recordモデルから特定の要素を取り出せます。 今回はpl…
Rubyの実装で利用されるメモリを計測する方法には主に以下の2つがあります。 今回は上記2つの具体的な利用方法…
検索条件によってはSQLでインデックスが利用されないケースがあります。 達人に学ぶDB設計 徹底指南書などでイ…
新規テーブルの作成やクエリチューニング時にインデックスを作成する機会があります。 インデックスを作成することで…
SQLのJOINで利用される代表的な結合方法にはNested loop join(NLJ、ネステッドループ結合…
複合インデックス(結合インデックス)とは複数のカラムを組み合わせたインデックスのことをいいます。 検索やソート…
前回、MySQLのEXPLAINの読み方とチューニング時のチェックポイントでEXPLAINの読み方について紹介…
EXPLAINを実行することでSQLの実行計画が取得できます。クエリのチューニングにおいてEXPLAINの理解…
アプリケーションの性能や検証をする際に、1対多の関係を持つダミーデータを大量に用意したい時があります。 Rai…
Railsアプリケーションでバルクインサート(複数のレコードを一括でインサートする方法)を実現する場合、Rai…
Fakerを利用すると簡単にダミーデータが作成できます。 今回はFakerの利用してRailsアプリケーション…
画像をはじめとした静的コンテンツをキャッシュし、Webサーバから配信することでアプリケーションのパフォーマンス…
前回、Ruby標準のBenchmarkモジュールを利用したベンチマークの実行・確認方法でRuby標準のBenc…
Rubyの標準で用意されているBenchmarkモジュールを利用するとベンチマークテストが実行できます。 今回…
Stackprofは『どのメソッドにどれくらいの時間がかかっているか』を解析できるgemです。 今回はStac…
Railsアプリの計測用gemで有名なrack-mini-profilerのインストール方法および利用方法につ…
rblineprofは計測対象のファイルに計測用のコードを埋め込むことで行単位のプロファイリングが行えるgem…
前回、【Ruby】rblineprofで行単位の計測を行う方法でrblineprofを利用したRubyのプロフ…
rblineprofは行単位のプロファイリングを行うgemです。 rblineprofを利用することで『どの行…