メインメニューを開く

差分

オブジェクト・キャッシュ

93 バイト追加, 2023年10月26日 (木) 02:08
編集の要約なし
'''オブジェクト・キャッシュ'''とは、一部の[[オブジェクト指向プログラミング言語]]のラン[[タイム]]に内蔵されている「オブジェクト生成を高速化する機能」です。
あるオブジェクトを生成する際に[[コンストラクタ]]まで実行した状態のコピーを[[メモリ]]の空きスペースにキャッシュしておくというもので、キャッシュがある場合はコンストラクタの実行を省けるというものです。ちなみに[[PHP]]では[[ソースコード]]から変換した[[中間コード]]もキャッシュ対象で、その保存先はメモリだけでなく[[ファイル]]や[[データベース]]なども利用できます。、さらには[[Memcached]]などでサーバー間でも共有するなどといった方法も利用できます。
オブジェクトキャッシュはオブジェクト生成を頻繁に繰り返す場面では効果が高い。塵も積もれば山となるというものです。とくに[[ウェブサーバー]]のような「1ページが1オブジェクト」「1アクセスごとに1オブジェクトを生成」する用途では塵も積もりやすいようです。のような「1ページが1オブジェクト+α」「1アクセスごとに1オブジェクトを生成」する用途では塵も積もりやすいようです。
オブジェクトキャッシュは「[[プログラミング言語]]を作る[[プログラマー]]」が意識すべきものであり、[[プログラミング言語]]を利用するだけの[[プログラマー]]が意識することはほとんどありません。ただほとんどの[[プログラミング言語]]には明示的にオブジェクトキャッシュを制御するなんらかの手法が用意されています。なお、そんなものを意識して[[プログラミング]]して工数を激増させるくらいなら高性能な[[サーバー]]を買って力まかせにぶん回した方が安上がりなことが多いです。