ื”ืฉื•ื•ืื” ื‘ื™ืŸ ื‘ื™ืฆื•ืขื™ DBMS ืฉืœ Valkey ื•-Redis

ืžื•ืฆื’ื•ืช ืชื•ืฆืื•ืช ื‘ื“ื™ืงื•ืช ื”ื’ืจืกืื•ืช ื”ืื—ืจื•ื ื•ืช ืฉืœ Redis 8.0 ื•-Valkey 8.1 DBMS, ื‘ื”ืŸ ื”ื•ื›ืจื–ื• ืื•ืคื˜ื™ืžื™ื–ืฆื™ื•ืช ื‘ื™ืฆื•ืขื™ื ืžืฉืžืขื•ืชื™ื•ืช. ื‘ื›ืœ ื”ื‘ื“ื™ืงื•ืช ืฉื‘ื•ืฆืขื•, ื”ืžื–ืœื’ ืฉืคื•ืชื— ืขืœ ื™ื“ื™ ื”ืงื”ื™ืœื” ืขืœื” ืขืœ ื‘ื™ืฆื•ืขื™ื• ืฉืœ ื”ืคืจื•ื™ืงื˜ ื”ืžืงื•ืจื™, ื‘ืขื™ืงืจ ื”ื•ื“ื•ืช ืœื™ื™ืฉื•ื ื‘-Valkey ืฉืœ ืžื ื’ื ื•ืŸ ื—ื“ืฉ ืœืขื™ื‘ื•ื“ ืงืœื˜/ืคืœื˜ ืžืจื•ื‘ื” ื”ืœื™ื›ื™ื ื‘ืžืฆื‘ ืืกื™ื ื›ืจื•ื ื™, ืฉื”ื•ืขื‘ืจ ืœืคืจื•ื™ืงื˜ ืขืœ ื™ื“ื™ ืืžื–ื•ืŸ.

ื‘ืกื‘ื™ื‘ืช ื”ื‘ื“ื™ืงื” AWS Graviton4 c8g.2xlarge ืขื 8 VCPUs, Valkey 8.1.1 ื”ืฉื™ื’ื” ืชืคื•ืงื” ืฉืœ 999.8 ืืœืฃ ื‘ืงืฉื•ืช SET ืœืฉื ื™ื™ื”, ื‘ืขื•ื“ ืฉ-Redis 8.0 ื”ืฉื™ื’ื” ืจืžื” ืฉืœ 729.4 ืืœืฃ ื‘ืงืฉื•ืช ืœืฉื ื™ื™ื”. ื‘ืกืš ื”ื›ืœ, ื”ืชืคื•ืงื” ืฉืœ Valkey ื”ื™ื™ืชื” ื’ื‘ื•ื”ื” ื‘-37% ืžื–ื• ืฉืœ Redis ืขื‘ื•ืจ ืคืขื•ืœื•ืช SET ื•ื’ื‘ื•ื”ื” ื‘-16% ืขื‘ื•ืจ GET. ื™ื—ื“ ืขื ื–ืืช, ื‘ื”ืฉื•ื•ืื” ืœ-Redis, Valkey ื”ืคื’ื™ื ื” ื”ืคื—ืชื” ืฉืœ 30% ื‘-SET ื•-60% ื‘ื”ืฉื”ื™ื™ืช GET.

 ื”ืฉื•ื•ืื” ื‘ื™ืŸ ื‘ื™ืฆื•ืขื™ DBMS ืฉืœ Valkey ื•-Redis

ื ื™ืชื•ื— ื ืคืจื“ ื ืขืจืš ืฉืœ ื”ืฉื™ื ื•ื™ ื‘ืชืคื•ืงื” ื•ื‘ืขื™ื›ื•ื‘ื™ื ื‘ื”ืชืื ืœืžืกืคืจ ื”ืžืขื‘ื“ื™ื ื”ืžืงื‘ื™ืœื™ื ื‘ืžืฆื‘ ืขื™ื‘ื•ื“ ืงืœื˜/ืคืœื˜ ืžืจื•ื‘ื”-ื”ืœื™ื›ื™ ืžืฉื ื”. ืขื“ 3 ื”ืœื™ื›ื™ ืžืฉื ื”, Valkey ื•-Redis ืžืฆื™ื’ื™ื ืชื•ืฆืื•ืช ืฉื•ื•ืช ื‘ืงื™ืจื•ื‘, ืืš ืœืื—ืจ ืžื›ืŸ Valkey ืžื•ื‘ื™ืœื”. ืขื 6 ื”ืœื™ื›ื™ ืžืฉื ื” ื‘ืžืขืจื›ืช ืขื 8 VCPUs, ื‘ื™ืฆื•ืขื™ Valkey ื”ื™ื• 678 ืืœืฃ ื‘ืงืฉื•ืช SET ืœืฉื ื™ื™ื”, ื•ืฉืœ Redis ื”ื™ื• 563 ืืœืฃ ื‘ืงืฉื•ืช ืœืฉื ื™ื™ื” ืขื ืžื’ื‘ืœื” ืฉืœ 256 ื—ื™ื‘ื•ืจื™ื ื‘ื• ื–ืžื ื™ืช. ื›ืืฉืจ ืžืกืคืจ ื”ื—ื™ื‘ื•ืจื™ื ื’ื“ืœ ืœ-400, ื‘ื™ืฆื•ืขื™ Valkey ืขืœื• ืœ-832 ืืœืฃ ื‘ืงืฉื•ืช SET ืœืฉื ื™ื™ื”.

 ื”ืฉื•ื•ืื” ื‘ื™ืŸ ื‘ื™ืฆื•ืขื™ DBMS ืฉืœ Valkey ื•-Redis

ืœืื—ืจ ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ืฉืœ ื˜ื™ืคื•ืœ ื‘ืคืกื™ืงื•ืช ื‘ืžืขืจื›ืช ื›ื“ื™ ืœื”ืคื—ื™ืช ืืช ืžืกืคืจ ืžืชื’ื™ ื”ื”ืงืฉืจ ื‘-Valkey, ื”ืฆืœื—ื ื• ืœื”ื’ื“ื™ืœ ืืช ื”ื‘ื™ืฆื•ืขื™ื ืœ-999.8 ืืœืฃ ื‘ืงืฉื•ืช SET ืœืฉื ื™ื™ื”. ืžื”ื•ืช ื”ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ื”ืกืชื›ืžื” ื‘ื”ืงืฆืืช 2 VCPU ืœื˜ื™ืคื•ืœ ื‘ืคืกื™ืงื•ืช ื•ืงื™ืฉื•ืจ 6 ื”-VCPU ื”ื ื•ืชืจื™ื ืœืชื”ืœื™ื›ื™ ืขื™ื‘ื•ื“ ืงืœื˜/ืคืœื˜ ืฉืœ Valkey ื•-Redis ื›ื“ื™ ืœืžื ื•ืข ื ื“ื™ื“ืช ืžื˜ืคืœื™ื ื‘ื™ืŸ ืžืขื‘ื“ื™ื. sudo ethtool -L ens34 combined 2 # ื”ื’ื‘ืœืช ืžืกืคืจ ืžื˜ืคืœื™ IRQ ืœ-2 grep ens34 /proc/interrupts # ืจืื” ืื™ืœื• ืžื˜ืคืœื™ื ืžืขื•ืจื‘ื™ื (99 ื•-100) echo 1 | sudo tee /proc/irq/99/smp_affinity # ืงืฉื™ืจืช ืžื˜ืคืœ 99 ืœืœื™ื‘ื” 1 echo 2 | sudo tee /proc/irq/100/smp_affinity # ืงืฉื™ืจืช ืžื˜ืคืœ 100 ืœืœื™ื‘ื” 2 # ื”ืคืขืœืช ืžืขืจื›ืช ื”-DBMS (ืขื‘ื•ืจ Redis, ืฉื ื” ืืช valkey/valkey:8.1.1 ืœ-redis:8.0) ืขื ืงืฉื™ืจืช ืงื•ื ื˜ื™ื™ื ืจ ืœืœื™ื‘ื•ืช ื”ืžืขื‘ื“ 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

ืœืฆื•ืจืš ื‘ื“ื™ืงื•ืช ื‘ื™ืฆื•ืขื™ื, ื ืขืฉื” ืฉื™ืžื•ืฉ ื‘ืคืงื•ื“ื” ื”ื‘ืื”: 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

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”