現在 MSSQL で Hangfire を使用しており、Redis に移行してタスクのスループットを向上させたいと考えています。
キー ハッシュによるシャーディング (パーティショニング) は非常にシンプルで、スケーラブルで、保守も簡単です。現在、Redis クラスターにアクセスできません。したがって、満たす必要がある要件は 2 つあります。
- 構成ファイルを介して Hangfire に渡された Redis サーバーのリストを用意します。
- 指定されたキーが予測どおりにいずれかのサーバーに送信されるようにします (Memcached と同様)。
そうすれば、「n」個の Redis サーバー間で任意の数のジョブを分割できます。
Hangfire には、ストレージとジョブという 2 つの部分があることに気付きました。これらの 2 つのコンポーネントが Redis シャード環境でどのように機能するのか興味があります。
Twemproxy などのサードパーティ製コンポーネントがこれらの懸念に役立つことはわかっていますが、キーハッシュのアプローチは非常に単純なので、Twemproxy を実装する前にその手段を使い果たすと思いました。
ありがとう!