Rezilta tès dènye vèsyon SGBD Redis 8.0 ak Valkey 8.1 yo prezante, kote yo te deklare optimizasyon pèfòmans enpòtan. Nan tout tès ki te fèt yo, fork kominote a te devlope a te depase pwojè orijinal la, sitou akòz aplikasyon nan Valkey yon nouvo mekanis pou pwosesis antre/soti milti-fil nan mòd asenkron, transfere nan pwojè a pa Amazon.
Nan anviwònman tès AWS Graviton4 c8g.2xlarge la avèk 8 VCPU, Valkey 8.1.1 te rive nan yon debi 999.8 mil demann SET pa segonn, pandan Redis 8.0 te rive nan yon nivo 729.4 mil demann pa segonn. An jeneral, debi Valkey la te 37% pi wo pase Redis la pou operasyon SET ak 16% pi wo pou GET. An menm tan, konpare ak Redis, Valkey te demontre yon rediksyon 30% nan SET ak 60% nan latans GET.

Yo te fè yon analiz apa sou chanjman nan débit ak reta yo selon kantite processeur paralèl nan mòd pwosesis I/O milti-fil la. Jiska 3 fil, Valkey ak Redis montre rezilta apeprè egal, men apre sa Valkey pran devan. Avèk 6 fil sou yon sistèm ki gen 8 VCPU, pèfòmans Valkey te 678 mil demann SET pa segonn, epi Redis te 563 mil demann pa segonn ak yon limit 256 koneksyon similtane. Lè kantite koneksyon yo te ogmante a 400, pèfòmans Valkey te ogmante a 832 mil demann SET pa segonn.

Apre nou te optimize jesyon entèripsyon nan sistèm nan pou diminye kantite chanjman kontèks nan Valkey, nou te reyisi ogmante pèfòmans lan a 999.8 mil demann SET pa segonn. Esans optimize a te chita nan asiyen 2 VCPU pou jesyon entèripsyon epi lye 6 VCPU ki rete yo ak fil pwosesis Valkey ak Redis I/O yo pou elimine migrasyon jesyonè ant CPU yo. sudo ethtool -L ens34 combined 2 # limite kantite jesyonè IRQ a 2 grep ens34 /proc/interrupts # wè ki jesyonè ki enplike (99 ak 100) echo 1 | sudo tee /proc/irq/99/smp_affinity # lye jesyonè 99 ak nwayo 1 echo 2 | sudo tee /proc/irq/100/smp_affinity # lye handler 100 ak nwayo 2 # Kòmanse DBMS la (pou Redis, chanje valkey/valkey:8.1.1 an redis:8.0) avèk lyezon kontenè ak nwayo 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
Pou tès pèfòmans lan, yo te itilize kòmand sa a: 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
Sous: opennet.ru
