「オブジェクト・キャッシュ」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
(ページの作成:「'''オブジェクト・キャッシュ'''とは、一部のオブジェクト指向プログラミング言語のランタイムに内蔵されている「オブ…」)
 
1行目: 1行目:
 
'''オブジェクト・キャッシュ'''とは、一部の[[オブジェクト指向プログラミング言語]]のラン[[タイム]]に内蔵されている「オブジェクト生成を高速化する機能」です。
 
'''オブジェクト・キャッシュ'''とは、一部の[[オブジェクト指向プログラミング言語]]のラン[[タイム]]に内蔵されている「オブジェクト生成を高速化する機能」です。
  
あるオブジェクトを生成する際に[[コンストラクタ]]まで実行した状態のコピーを[[メモリ]]の空きスペースにキャッシュしておくというもので、キャッシュがある場合はコンストラクタの実行を省けるというものです。ちなみに[[PHP]]では[[ソースコード]]から変換した[[中間コード]]もキャッシュ対象です。
+
あるオブジェクトを生成する際に[[コンストラクタ]]まで実行した状態のコピーを[[メモリ]]の空きスペースにキャッシュしておくというもので、キャッシュがある場合はコンストラクタの実行を省けるというものです。ちなみに[[PHP]]では[[ソースコード]]から変換した[[中間コード]]もキャッシュ対象で、その保存先はメモリだけでなく[[ファイル]]や[[データベース]]なども利用できます。
  
 
オブジェクトキャッシュはオブジェクト生成を頻繁に繰り返す場面では効果が高い。塵も積もれば山となるというものです。とくに[[ウェブサーバー]]のような「1ページが1オブジェクト」「1アクセスごとに1オブジェクトを生成」する用途では塵も積もりやすいようです。
 
オブジェクトキャッシュはオブジェクト生成を頻繁に繰り返す場面では効果が高い。塵も積もれば山となるというものです。とくに[[ウェブサーバー]]のような「1ページが1オブジェクト」「1アクセスごとに1オブジェクトを生成」する用途では塵も積もりやすいようです。

2023年10月26日 (木) 02:04時点における版

オブジェクト・キャッシュとは、一部のオブジェクト指向プログラミング言語のランタイムに内蔵されている「オブジェクト生成を高速化する機能」です。

あるオブジェクトを生成する際にコンストラクタまで実行した状態のコピーをメモリの空きスペースにキャッシュしておくというもので、キャッシュがある場合はコンストラクタの実行を省けるというものです。ちなみにPHPではソースコードから変換した中間コードもキャッシュ対象で、その保存先はメモリだけでなくファイルデータベースなども利用できます。

オブジェクトキャッシュはオブジェクト生成を頻繁に繰り返す場面では効果が高い。塵も積もれば山となるというものです。とくにウェブサーバーのような「1ページが1オブジェクト」「1アクセスごとに1オブジェクトを生成」する用途では塵も積もりやすいようです。

オブジェクトキャッシュは「プログラミング言語を作るプログラマー」が意識すべきものであり、プログラミング言語を利用するだけのプログラマーが意識することはほとんどありません。ただほとんどのプログラミング言語には明示的にオブジェクトキャッシュを制御するなんらかの手法が用意されています。なお、そんなものを意識してプログラミングして工数を激増させるくらいなら高性能なサーバーを買って力まかせにぶん回した方が安上がりなことが多いです。

関連項目