WinFormsでRedisを動作確認

この章ではStackExchange.Redisを利用したC# WinFormsのRedisキャッシュラッパーを扱います

Visual Studioを開き、WinFormsプロジェクトを作成し、NuGetから依存パッケージをインストールします

依存パッケージのインストール

  1. StackExchange.Redis
    .NETエコシステムで最も広く使われているRedisオープンソースクライアント。Redisサーバーと通信するために使用します。
    Githubリポジトリ:https://github.com/StackExchange/StackExchange/StackExchange.Redis
    RedisはTCPプロトコルを公開しているため理論上Socketを直接書くことも可能ですが、業務開発では実績のあるサードパーティライブラリが一般的です。
  2. Newtonsoft.Json(Json.NET)
    オブジェクトのシリアライズを行い、オブジェクトをJSON文字列、さらにバイト配列へ変換しRedisへ保存。読み出し時に逆にデシリアライズします。
    NuGetからインストールが必要です。コード内のJsonConvert.SerializeObjectはこのライブラリに由来します。

Redisラッパーメソッド

// キャッシュ書き込み:オブジェクトを保存、有効期限(分)を指定
private bool Set(string key, object data, int cacheTime)
{
    if (data == null)
    {
        return false;
    }
    var entryBytes = Serialize(data);
    var expiresIn = TimeSpan.FromMinutes(cacheTime);
    return db.StringSet(key, entryBytes, expiresIn);
}

// オブジェクトシリアライズ:エンティティオブジェクト → UTF8バイト配列
private byte[] Serialize(object data)
{
    var json = JsonConvert.SerializeObject(data);
    return Encoding.UTF8.GetBytes(json);
}Code language: PHP (php)

WinFormsでRedisを動作確認

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です