āĻ­āĻžāϞāĻ•āĻŋ āĻāĻŦāĻ‚ āϰ⧇āĻĄāĻŋāϏ āĻĄāĻŋāĻŦāĻŋāĻāĻŽāĻāϏ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻžāϰ āϤ⧁āϞāύāĻž

Redis 8.0 āĻāĻŦāĻ‚ Valkey 8.1 DBMS-āĻāϰ āϏāĻ°ā§āĻŦāĻļ⧇āώ āϰāĻŋāϞāĻŋāϜ āĻĒāϰ⧀āĻ•ā§āώāĻžāϰ āĻĢāϞāĻžāĻĢāϞ āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇, āϝ⧇āĻ–āĻžāύ⧇ āωāĻ˛ā§āϞ⧇āĻ–āϝ⧋āĻ—ā§āϝ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻ…āĻĒā§āϟāĻŋāĻŽāĻžāχāĻœā§‡āĻļāύ āĻ˜ā§‹āώāĻŖāĻž āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻĒāϰāĻŋāϚāĻžāϞāĻŋāϤ āϏāĻŽāĻ¸ā§āϤ āĻĒāϰ⧀āĻ•ā§āώāĻžāϝāĻŧ, āϏāĻŽā§āĻĒā§āϰāĻĻāĻžāϝāĻŧ āĻĻā§āĻŦāĻžāϰāĻž āϤ⧈āϰāĻŋ āĻĢāĻ°ā§āĻ•āϟāĻŋ āĻŽā§‚āϞ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒāϕ⧇ āĻ›āĻžāĻĄāĻŧāĻŋāϝāĻŧ⧇ āϗ⧇āϛ⧇, āĻŽā§‚āϞāϤ āĻ…ā§āϝāĻžāϏāĻŋāĻ™ā§āĻ•ā§āϰ⧋āύāĻžāϏ āĻŽā§‹āĻĄā§‡ āĻŽāĻžāĻ˛ā§āϟāĻŋ-āĻĨā§āϰ⧇āĻĄā§‡āĻĄ āχāύāĻĒ⧁āϟ/āφāωāϟāĻĒ⧁āϟ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻ•āϰāϪ⧇āϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻž āĻ­ā§āϝāĻžāϞāĻ•āĻŋāϤ⧇ āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ⧇āϰ āĻ•āĻžāϰāϪ⧇, āϝāĻž āĻ…ā§āϝāĻžāĻŽāĻžāϜāύ āĻĻā§āĻŦāĻžāϰāĻž āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇ āĻ¸ā§āĻĨāĻžāύāĻžāĻ¨ā§āϤāϰāĻŋāϤ āĻšāϝāĻŧ⧇āĻ›āĻŋāϞāĨ¤

ā§ŽāϟāĻŋ VCPU āϏāĻš AWS Graviton4 c8g.2xlarge āĻĒāϰ⧀āĻ•ā§āώāĻžāϰ āĻĒāϰāĻŋāĻŦ⧇āĻļ⧇, Valkey 8 āĻĒā§āϰāϤāĻŋ āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ 8.1.1 āĻšāĻžāϜāĻžāϰ SET āĻ…āύ⧁āϰ⧋āϧ⧇āϰ āĻĨā§āϰ⧁āĻĒ⧁āϟ āĻ…āĻ°ā§āϜāύ āĻ•āϰ⧇āϛ⧇, āϝ⧇āĻ–āĻžāύ⧇ Redis 999.8 āĻĒā§āϰāϤāĻŋ āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ 8.0 āĻšāĻžāϜāĻžāϰ āĻ…āύ⧁āϰ⧋āϧ⧇āϰ āĻ¸ā§āϤāϰ āĻ…āĻ°ā§āϜāύ āĻ•āϰ⧇āϛ⧇āĨ¤ āϏāĻžāĻŽāĻ—ā§āϰāĻŋāĻ•āĻ­āĻžāĻŦ⧇, SET āĻ…āĻĒāĻžāϰ⧇āĻļāύ⧇āϰ āϜāĻ¨ā§āϝ Valkey āĻāϰ āĻĨā§āϰ⧁āĻĒ⧁āϟ Redis āĻāϰ āϤ⧁āϞāύāĻžāϝāĻŧ 729.4% āĻŦ⧇āĻļāĻŋ āĻāĻŦāĻ‚ GET āĻāϰ āϜāĻ¨ā§āϝ 37% āĻŦ⧇āĻļāĻŋāĨ¤ āĻāĻ•āχ āϏāĻŽāϝāĻŧ⧇, Redis āĻāϰ āϤ⧁āϞāύāĻžāϝāĻŧ, Valkey SET āĻ 16% āĻšā§āϰāĻžāϏ āĻāĻŦāĻ‚ GET āϞ⧇āĻŸā§‡āĻ¨ā§āϏāĻŋāϤ⧇ 30% āĻšā§āϰāĻžāϏ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧇āϛ⧇āĨ¤

 āĻ­āĻžāϞāĻ•āĻŋ āĻāĻŦāĻ‚ āϰ⧇āĻĄāĻŋāϏ āĻĄāĻŋāĻŦāĻŋāĻāĻŽāĻāϏ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻžāϰ āϤ⧁āϞāύāĻž

āĻŽāĻžāĻ˛ā§āϟāĻŋ-āĻĨā§āϰ⧇āĻĄā§‡āĻĄ I/O āĻĒā§āϰāϏ⧇āϏāĻŋāĻ‚ āĻŽā§‹āĻĄā§‡ āϏāĻŽāĻžāĻ¨ā§āϤāϰāĻžāϞ āĻĒā§āϰāϏ⧇āϏāϰ⧇āϰ āϏāĻ‚āĻ–ā§āϝāĻžāϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āĻ•āϰ⧇ āĻĨā§āϰ⧁āĻĒ⧁āϟ āĻāĻŦāĻ‚ āĻŦāĻŋāϞāĻŽā§āĻŦ⧇āϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ⧇āϰ āĻāĻ•āϟāĻŋ āĻĒ⧃āĻĨāĻ• āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻĒāϰāĻŋāϚāĻžāϞāĻŋāϤ āĻšāϝāĻŧ⧇āĻ›āĻŋāϞāĨ¤ 3āϟāĻŋ āĻĨā§āϰ⧇āĻĄ āĻĒāĻ°ā§āϝāĻ¨ā§āϤ, āĻ­ā§āϝāĻžāϞāĻ•āĻŋ āĻāĻŦāĻ‚ āϰ⧇āĻĄāĻŋāϏ āĻĒā§āϰāĻžāϝāĻŧ āϏāĻŽāĻžāύ āĻĢāϞāĻžāĻĢāϞ āĻĻ⧇āĻ–āĻžāϝāĻŧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϤāĻžāϰāĻĒāϰ⧇ āĻ­ā§āϝāĻžāϞāĻ•āĻŋ āύ⧇āϤ⧃āĻ¤ā§āĻŦ āĻĻ⧇āϝāĻŧāĨ¤ 6āϟāĻŋ VCPU āϏāĻš āĻāĻ•āϟāĻŋ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ 8āϟāĻŋ āĻĨā§āϰ⧇āĻĄ āϏāĻš, āĻ­ā§āϝāĻžāϞāĻ•āĻŋāϰ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻĒā§āϰāϤāĻŋ āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ 678 āĻšāĻžāϜāĻžāϰ SET āĻ…āύ⧁āϰ⧋āϧ āĻ›āĻŋāϞ, āĻāĻŦāĻ‚ āϰ⧇āĻĄāĻŋāϏ⧇āϰ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻĒā§āϰāϤāĻŋ āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ 563 āĻšāĻžāϜāĻžāϰ āĻ…āύ⧁āϰ⧋āϧ āĻ›āĻŋāϞ āϝāĻžāϰ āϏ⧀āĻŽāĻž 256āϟāĻŋ āĻāĻ•āϝ⧋āϗ⧇ āϏāĻ‚āϝ⧋āĻ— āĻ›āĻŋāϞāĨ¤ āϝāĻ–āύ āϏāĻ‚āϝ⧋āϗ⧇āϰ āϏāĻ‚āĻ–ā§āϝāĻž 400-āĻ āĻŦ⧃āĻĻā§āϧāĻŋ āĻĒāĻžāϝāĻŧ, āĻ­ā§āϝāĻžāϞāĻ•āĻŋāϰ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž āĻĒā§āϰāϤāĻŋ āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ 832 āĻšāĻžāϜāĻžāϰ SET āĻ…āύ⧁āϰ⧋āϧ⧇ āĻŦ⧃āĻĻā§āϧāĻŋ āĻĒāĻžāϝāĻŧāĨ¤

 āĻ­āĻžāϞāĻ•āĻŋ āĻāĻŦāĻ‚ āϰ⧇āĻĄāĻŋāϏ āĻĄāĻŋāĻŦāĻŋāĻāĻŽāĻāϏ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻžāϰ āϤ⧁āϞāύāĻž

Valkey-āϤ⧇ āĻ•āύāĻŸā§‡āĻ•ā§āϏāϟ āϏ⧁āχāĻšā§‡āϰ āϏāĻ‚āĻ–ā§āϝāĻž āĻ•āĻŽāĻžāϤ⧇ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āχāĻ¨ā§āϟāĻžāϰāĻžāĻĒā§āϟ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻŋāĻ‚ āĻ…āĻĒā§āϟāĻŋāĻŽāĻžāχāϜ āĻ•āϰāĻžāϰ āĻĒāϰ, āφāĻŽāϰāĻž āĻĒā§āϰāϤāĻŋ āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻž 999.8 āĻšāĻžāϜāĻžāϰ SET āĻ…āύ⧁āϰ⧋āϧ⧇ āωāĻ¨ā§āύ⧀āϤ āĻ•āϰāϤ⧇ āϏāĻ•ā§āώāĻŽ āĻšāϝāĻŧ⧇āĻ›āĻŋāĨ¤ āĻ…āĻĒā§āϟāĻŋāĻŽāĻžāχāĻœā§‡āĻļāύ⧇āϰ āϏāĻžāϰāĻŽāĻ°ā§āĻŽ āĻšāϞ āχāĻ¨ā§āϟāĻžāϰāĻžāĻĒā§āϟ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻŋāĻ‚-āĻāϰ āϜāĻ¨ā§āϝ 2āϟāĻŋ VCPU āĻŦāϰāĻžāĻĻā§āĻĻ āĻ•āϰāĻž āĻāĻŦāĻ‚ CPU-āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻžāϰ⧇āϰ āĻ¸ā§āĻĨāĻžāύāĻžāĻ¨ā§āϤāϰ āĻĻā§‚āϰ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻŦāĻžāĻ•āĻŋ 6āϟāĻŋ VCPU-āϕ⧇ Valkey āĻāĻŦāĻ‚ Redis I/O āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻ•āϰāĻŖ āĻĨā§āϰ⧇āĻĄā§‡ āφāĻŦāĻĻā§āϧ āĻ•āϰāĻžāĨ¤ sudo ethtool -L ens34 āϏāĻŽā§āĻŽāĻŋāϞāĻŋāϤ 2 # IRQ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻžāϰ⧇āϰ āϏāĻ‚āĻ–ā§āϝāĻž 2āϟāĻŋāϤ⧇ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧ āĻ•āϰ⧁āύ grep ens34 /proc/interrupts # āĻĻ⧇āϖ⧁āύ āϕ⧋āύ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻžāϰ āϜāĻĄāĻŧāĻŋāϤ (99 āĻāĻŦāĻ‚ 100) echo 1 | sudo tee /proc/irq/99/smp_affinity # bind handler 99 to core 1 echo 2 | sudo tee /proc/irq/100/smp_affinity # āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻžāϰ 100 āϕ⧇ āϕ⧋āϰ 2 āĻ āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰ⧁āύ # CPU āϕ⧋āϰ 8.1.1-8.0 āĻāϰ āϏāĻžāĻĨ⧇ āĻ•āĻ¨ā§āĻŸā§‡āχāύāĻžāϰ āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϏāĻš DBMS āĻļ⧁āϰ⧁ āĻ•āϰ⧁āύ (Redis āĻāϰ āϜāĻ¨ā§āϝ, valkey/valkey:2 āϕ⧇ redis: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

āĻāĻ•āϟāĻŋ āĻŽāĻ¨ā§āϤāĻŦā§āϝ āϜ⧁āĻĄāĻŧ⧁āύ