Rezultatet e testimit të versioneve të reja të DBMS Redis 8.0 dhe Valkey 8.1 janë paraqitur, në të cilat janë shpallur optimizime të rëndësishme të performancës. Në të gjitha testet e kryera, forku i zhvilluar nga komuniteti ka tejkaluar projektin origjinal, kryesisht falë zbatimit në Valkey të një mekanizmi të ri për përpunimin shumë-fijesh të hyrjes dhe daljes në modalitetin asinkron, të dhënë projektit nga kompania Amazon.
Në mjedisin e testimit AWS Graviton4 c8g.2xlarge me 8 VCPU, Valkey 8.1.1 arriti një performancë prej 999.8 mijë kërkesash SET në sekondë, ndërsa në Redis 8.0 u arrit një nivel prej 729.4 mijë kërkesash në sekondë. Në përgjithësi, kapaciteti i Valkey ishte më i lartë se ai i Redis me 37% për operacionet SET dhe 16% për GET. Gjithashtu, krahasuar me Redis, projekti Valkey demonstroi një ulje të vonesave në përpunimin e kërkesave prej 30% për operacionet SET dhe 60% për operacionet GET.

Një analizë e veçantë u krye për ndryshimin e kapacitetit dhe vonesave në varësi të numrit të përpunuesve që punojnë paralelisht në modalitetin e përpunimit shumëtheshtar të inputit/outputit. Deri në 3 rrjedha, Valkey dhe Redis tregojnë rezultate afërsisht të barabarta, por më pas Valkey përparon. Me 6 rrjedha në një sistem me 8 VCPU, performanca e Valkey arriti në 678 mijë kërkesa SET në sekondë, ndërsa Redis kishte 563 mijë kërkesa në sekondë me një kufi prej 256 lidhjeve të zakonshme. Duke rritur lidhjet në 400, performanca e Valkey u rrit në 832 mijë kërkesa SET në sekondë.

Pas optimizimit tĂ« pĂ«rpunimit tĂ« ndĂ«rprerjeve nĂ« sistem pĂ«r tĂ« ulur numrin e kalimeve tĂ« kontekstit, nĂ« Valkey arritĂ«m tĂ« rrisim performancĂ«n nĂ« 999.8 mijĂ« kĂ«rkesa SET nĂ« sekondĂ«. Thelbi i optimizimit pĂ«rfshinte ndarjen e 2 VCPU pĂ«r pĂ«rpunimin e ndĂ«rprerjeve dhe lidhjen e 6 VCPU tĂ« mbetur me rrjedhat e pĂ«rpunimit tĂ« hyrjes/daljes nĂ« Valkey dhe Redis, pĂ«r tĂ« eliminuar migrimin e pĂ«rpunuesve midis CPU. sudo ethtool -L ens34 combined 2 # kufizojmĂ« numrin e pĂ«rpunuesve IRQ nĂ« 2 grep ens34 /proc/interrupts # shikojmĂ« cilĂ«t pĂ«rpunues janĂ« aktiv (99 dhe 100) echo 1 | sudo tee /proc/irq/99/smp_affinity # lidhim pĂ«rpunuesin 99 me bĂ«rthamĂ«n 1 echo 2 | sudo tee /proc/irq/100/smp_affinity # lidhim pĂ«rpunuesin 100 me bĂ«rthamĂ«n 2 # Nisim DB (pĂ«r Redis ndryshoni valkey/valkey:8.1.1 nĂ« redis:8.0) me lidhjen e kontejnerit me bĂ«rthamat e CPU 2-7 docker run ânetwork="host" ârm \ âcpuset-cpus="2-7" valkey/valkey:8.1.1 \ âsave "" âappendonly no âio-threads 6 \ âprotected-mode no âmaxmemory 10gb
PĂ«r testimin e performancĂ«s u pĂ«rdor komanda: docker run ânetwork="host" ârm âcpuset-cpus="2-7" \ valkey/valkey:8.0.1 valkey-benchmark \ -h 172.31.4.92 -p 6379 -t SET,GET -n 100000000 -c 256 \ -r 3000000 âthreads 6 -d 1024
Burimi: opennet.ru
