IT-Q

キャッシュを入れる対象の判断基準として妥当なのはどれですか。

更新が少なく参照が多いものに入れます。常に最新であるべきものには入れません。ドライバは単一サーバーなら file でも動きますが、複数台構成では共有できる redis が要ります。

面接官が見ているのは場当たりでなく基準を持っているか。

よくある答えと、面談でどう見られるか

  • 更新頻度が低く、参照が多く、多少古くても許容できるもの
    その通りです。複数台構成なら共有できる redis、単一サーバーなら file でも動きます。
  • 表示が遅いページには、原因を問わずまず入れてみる
    速くはなりますが、原因を隠すだけになります。まず何が遅いかを特定してからです。キャッシュを入れると何が起きるかを先に押さえましょう。
  • ユーザーごとに異なるデータほど効果が高い
    共有されないので効果が薄い上、キーを間違えると他人のデータが見える事故になります。
  • 常に最新であるべきデータほど、キャッシュで守るべき
    逆です。最新性が要るものにはキャッシュを入れません。

面接官は何を見ているか

  • 具体的な対象を挙げた
  • 「更新頻度が低く参照が多い」等の基準を言えた
  • ドライバ(file / redis 等)に触れた

模範解答

更新が少なく参照が多いものに入れます。マスタデータや、集計に時間がかかるが多少古くても許容できる数値などです。逆に、常に最新であるべきものには入れません。ドライバは単一サーバーなら file でも動きますが、複数台構成なら共有できる redis にします。

ここからどう深掘りされるか

この問いに答えられた場合、面談は次の質問に進みます。