3

redis サーバーから約 10k のハッシュを取得する必要があります。redis には複数のハッシュを取得するコマンドがないため、db.HashGetAllAsync()call を使用してすべてのキーを反復処理し、すべてのタスクが完了するのを待っていました。うまくいきましたが、これらの呼び出し中に RedisLabs ダッシュボードで劇的なレイテンシースパイクが見られました.

同時に多くのハッシュを取得する方法はありますか? ConnectionMultiplexerこのような場合に役立つ設定はありますか?

4

1 に答える 1

2

varadic はないhgetallので、そうです。最も簡単な方法は、膨大な数の individual をパイプライン処理することhgetallです。他にできる唯一のこと、Lua スクリプト ( eval/ evalsha) を使用して各アイテムに複数のアイテムを生成することですが、これがサーバーの負荷や帯域幅を削減する方法がわかりません。試してみる価値があります!

いずれにせよ、そうです。これにより、サーバー上で何らかの作業が生成されます。

于 2015-03-17T13:14:36.310 に答える