Valkey 9.1

Bendruomenė Valkey paskelbė apie išleidimą Valkey 9.1 — nauja stabili didelio našumo, atvirojo kodo (BSD licencijos) raktų ir reikšmių duomenų saugyklos versija, kuri palaiko įvairius naudojimo atvejus, pvz., kaupimą talpykloje ir pranešimų eiles, ir gali veikti kaip pagrindinė duomenų bazė. Projektą remia Linux Fondas, užtikrinant jo nuolatinį prieinamumą kaip atvirojo kodo.


Projektas yra „Redis“ atšaka ir buvo sukurtas po to, kai licencijavimo pakeitimai.

Šiame leidime yra naujų funkcijų, patobulinimų saugumo, stebėjimo, našumo ir įrankių efektyvumo srityse. Prie leidimo prisidėjo daugiau nei 80 žmonių.

Pagrindiniai pokyčiai

  • Lua buvo perkelta į atskirą modulį.
    „Valkey 9.1“ versijoje „Lua“ scenarijų variklis buvo atskirtas nuo pagrindinio serverio ir perkeltas į atskirą modulį. Šis atskyrimas sumažina „Valkey“ branduolio atakos paviršių ir leidžia administratoriams visiškai išjungti „Lua“, jei scenarijai nenaudojami. Kad būtų lengviau suprasti, kurie scenarijų varikliai yra įkelti sistemoje, INFO komanda dabar turi naują atsakymo skyrių: „Scenarijų varikliai“.

  • Nauji saugumo pataisymai.
    Stabilioje 9.1.0 versijoje yra pataisymai trims pažeidžiamumams: „use-after-free“ pažeidžiamumui kliento atrakinimo mechanizme, netinkamai prieigai prie atminties 7RESTORE komandoje ir „use-after-free“ pažeidžiamumui visiško sinchronizavimo metu vykdant Lua/funkcijos kodą su „execution yield“. Šie pažeidžiamumai pastabose išvardyti kaip CVE-2026-23479, CVE-2026-25243 ir CVE-2026-23631.

  • Duomenų bazės lygio ACL.
    Pridėta duomenų bazės lygio prieigos kontrolės sistema. Tai leidžia tiksliau apibrėžti leidimus kelių vartotojų konfigūracijose ir neapsiriboja visuotinėmis prieigos taisyklėmis visam „Valkey“ egzemplioriui.

  • Automatinis TLS sertifikatų perkrovimas.
    „Valkey 9.1“ dabar palaiko automatinį TLS sertifikatų perkėlimą. Administratoriams tai reiškia mažiau rankinių veiksmų keičiant sertifikatus ir patogesnį saugių diegimų valdymą.

  • Nauja HGETDEL komanda.
    Komanda atomiškai nuskaito ir ištrina vieną ar kelis laukus iš maišos struktūros. Tai ypač naudinga tokiuose scenarijuose kaip eilės arba vienkartinis duomenų suvartojimas, kai anksčiau reikėjo sujungti HGET ir HDEL per vieną operaciją.

  • Nauja MSETEX komanda.
    MSETEX leidžia nustatyti kelis raktus su bendra galiojimo trukme naudojant vieną komandą. Anksčiau šiam scenarijui reikėjo kelių SETEX iškvietimų arba SET ir EXPIRE iškvietimų derinio per konvejerį. Naujoji komanda sumažina iškvietimų skaičių ir supaprastina įprastą kodą sesijos ir laikiniesiems duomenims.

  • Nauja CLUSTERSCAN komanda.
    Klasteriai dabar turi vieną komandą raktams nuskaityti visuose mazguose. Anksčiau klientai turėjo rankiniu būdu paleisti SCAN kiekviename mazge ir sujungti rezultatus. CLUSTERSCAN supaprastina klientų bibliotekas, administravimo įrankius ir operacines užduotis, tokias kaip raktų paieška pagal šabloną ar tipą visame klasteryje.

  • Optimizuojamas eilučių atminties naudojimas.
    Vidinis rodyklės optimizavimas eilutėms, trumpesnėms nei 128 baitai, sumažino atminties suvartojimą iki 20 %. Tai ypač svarbu tipiškoms talpyklos apkrovoms, kuriose saugoma daug mažų reikšmių.

  • Mažiau atminties surūšiuotiems rinkiniams.
    Optimizavus praleidžiamų sąrašų nustatymą, surūšiuotų rinkinių atminties sąnaudos sumažėja iki 10 %. Taip pat pagreitintos operacijos su surūšiuotais rinkiniais, įskaitant tokias užklausas kaip ZRANGEBYSCORE ir ZRANGEBYLEX.

  • Pagreitintas darbas su perrašymu.
    Vidinis maišos lentelės perskirstymas, kuris dažnai įvyksta, kai padidėja raktų erdvė, buvo optimizuotas siekiant sumažinti delsą. Išleidimo pastabose taip pat minima, kad sumažėjo delsos padidėjimas dėl laipsniško puslapio išleidimo.

  • Patobulintas įvesties/išvesties sriegimo modelis.
    9.1.0-rc2 versijos kandidatas perdarė įvesties/išvesties gijų sąveikos modelį, naudodamas eiles be užraktų. Išleidimo pastabose nurodomas 8–17 % pralaidumo padidėjimas.

  • Paspartinkite GET ir SET.
    „Valkey“ dabar, kur įmanoma, pagal numatytuosius nustatymus naudoja aparatinės įrangos laikrodį, taip sumažindama su laiku susijusių sistemos iškvietimų apkrovą. Projekte teigiama, kad bendras GET ir SET operacijų našumas padidės iki 3 %.

  • Greitesnis masinis perkraustymas.
    „Valkey“ dabar laikinai sustabdo vidinį maišos lentelių dydžio keitimą operacijų, tokių kaip SREM, ZREM ir HDEL, metu, kad būtų išvengta nereikalingo pakartotinio maišymo ir pagreitintas masinis elementų trynimas.

  • Efektyvesnis kopijų kūrimas AOF metu.
    Kuriant repliką su įjungtu AOF, gautas RDB failas dabar pakartotinai naudojamas, o ne generuojamas naujas pradinio AOF bazinio failo momentinis vaizdas. Tai turėtų sumažinti nereikalingas išlaidas diegiant replikas.

  • „valkey-cli“ ir „valkey-benchmark“ patobulinimai.
    Į „valkey-cli“ pridėta atominio lizdo migracijos palaikymas per parametrą „--cluster-use-atomic-slot-migration“, skirtą „--cluster rebalance“ ir „--cluster reshard“ operacijoms. Į „valkey-benchmark“ pridėta RPS paskirstymo išvestis kartu su parametrais „--warmup“ ir „--duration“, todėl našumo testavimas tapo lengviau valdomas.

Atskirai kartu su „Valkey 9.1“ ekosistemoje susiję projektai yra skatinami: Valkey administratorius vizualiam klasterių valdymui, Valkey paieška 1.2 su viso teksto paieška, skaitmeniniais filtrais, žymėmis ir vektorine paieška, taip pat kliento biblioteka Valkey GLIDE.

„Valkey 9.1“ yra reikšmingas atnaujinimas našumo požiūriu: mažiau atminties įprastose struktūrose, mažesnis delsos laikas atliekant vidinius atkūrimus, naujos komandos klasteriams ir laikiniesiems duomenims bei tikslesnis saugos modelis gamybinėms instaliacijoms.

Šaltinis: linux.org.ru

Pirkite patikimą prieglobą svetainėms su DDoS apsauga, VPS VDS serveriais 🔥 Įsigykite patikimą svetainių talpinimą su DDoS apsauga, VPS VDS serveriais | ProHoster