0

過去にキャッシュを実装しました。以下は、リポジトリの上にサービス層を実装するために私が従ったパターンです。

T retrieve(String key)
{
    if (cache.contains(key))
        return cache.get(key)

    T obj = repository.get(key);
    cache.put(key, obj);
}


void create(T object)
{
    repository.create(object);
}


void delete(String key)
{
    cache.remove(key);
    repository.delete(key);
}

注: 上記の疑似コードでは、スレッドの安全性に関する懸念は考慮されていません。

私はこの言葉に出くわしました-キャッシュを介して書き込み、それについてもっと理解したいです。以下は私の質問です:

  1. ライトスルーキャッシュとは?
  2. ライト スルー キャッシュは通常のキャッシュとどう違うのですか?
  3. ライトスルー キャッシングを使用する必要があるのはいつですか?
  4. ライト スルー キャッシュの疑似コードはどのようになりますか?
  5. 他にそのようなキャッシュの違いはありますか?

ありがとう。

4

2 に答える 2

3

ライトスルー キャッシュでは、書き込みはキャッシュと永続ストアに対して同期的に行われます。他のキャッシュ タイプでは、パフォーマンス上の理由から、永続ストレージへの書き込みが延期される場合があります。

ウィキペディアでは、一般的なキャッシュ書き込みポリシーに関する基本的な概念について説明しています。

于 2013-06-10T06:33:19.613 に答える