Stackexchange.redis: Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² спискС, Ссли ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ нСсколько ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π² спискС?

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 30 сСнт. 2014  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: StackExchange/StackExchange.Redis

Π£ мСня Π΅ΡΡ‚ΡŒ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ список ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, ΠΈ ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для этих ΠΊΠ»ΡŽΡ‡Π΅ΠΉ. МоТно Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ?

cache.Set("A", ΠžΠ±ΡŠΠ΅ΠΊΡ‚1);
cache.Set("B", ΠžΠ±ΡŠΠ΅ΠΊΡ‚2);
Бписок> пСрСраспрСдСлСниС;
БписокsKeys = Π½ΠΎΠ²Ρ‹ΠΉ список();
sKeys.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("А");
sKeys.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π’");

(Бписок>)cache.get(sKeys) --> Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚..

ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Π²ΠΈΠ΄Π΅ списка, Ссли ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ нСсколько ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π² Π²ΠΈΠ΄Π΅ списка.

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°ΠΊ:

var keys = new RedisKey[] { "A", "B" };
var values = cache.StringGet(keys);
var a = (string)values[0];
var b = (byte[])values[1];

ΠΈΠ»ΠΈ ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅

ВсС 3 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

А Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ "кэш" Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅? API IDatabase ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ API:

RedisValue[] StringGet(RedisKey[] keys, CommandFlags flags = CommandFlags.None);

ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ вСрсия Async ; ΠΎΠ΄Π½Π°ΠΊΠΎ, Π½Π΅ зная вашСго Ρ‚ΠΈΠΏΠ° «кСша», я Π½Π΅ ΠΌΠΎΠ³Ρƒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это Π½Π΅ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° API SE.Redis.

Кэш IDatabase = connection.GetDatabase();

МнС Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ нСсколько списков ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², хранящихся Π² Redis, ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ² список строковых ΠΊΠ»ΡŽΡ‡Π΅ΠΉ.

Π’Π°ΠΊ:

var keys = new RedisKey[] { "A", "B" };
var values = cache.StringGet(keys);
var a = (string)values[0];
var b = (byte[])values[1];

ΠΈΠ»ΠΈ ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ