Junior — Middle
104
Դուք ունե՞ք փորձ Redis-ում գործարքների իրականացմանը:
Ընկերությունները, որտեղ հարցրել են
Պատասխան AI-ից
sobes.tech AI
Redis-ում գործառնությունները իրականացվում են MULTI, EXEC, DISCARD և WATCH հրահանգների միջոցով: Դրանք թույլ են տալիս խմբավորել մի քանի հրահանգներ որպես ագրեգատային օպերացիա:
MULTIսկսում է գործարքը, որի ընթացքում բոլոր հրահանգները հերթում են դրվում:EXECexecutes բոլոր հրահանգները որպես մի ամբողջական գործողություն:DISCARDչեղյալ է հայտարարում գործարքը:WATCHթույլ է տալիս հետևել բանալիներին և չեղյալ հայտարարել գործարքը, եթե դրանք փոխվել են (օպտիմիստական փակագծի համար):
Java-ում Jedis օգտագործելով օրինակ:
try (Jedis jedis = new Jedis("localhost")) {
jedis.watch("key1");
Transaction t = jedis.multi();
t.set("key1", "value1");
t.incr("counter");
List<Object> results = t.exec();
if (results == null) {
// գործարքը չեղյալ է հայտարարվել բանալի փոփոխության պատճառով
}
}
Այսպիսով, Redis-ի գործարքները ապահովում են հրահանգների հերթական և ագրեգատային կատարմանը, բայց չեն աջակցում լիարժեք ACID գործարքների, ինչպես ռելացիոնալ տվյալների բազաներում։