Redis 7.0 nga pagpagawas

Ang pagpagawas sa Redis 7.0 DBMS, nga nahisakop sa klase sa mga sistema sa NoSQL, gipatik. Ang Redis naghatag ug mga gimbuhaton alang sa pagtipig sa yawe/bili nga datos, nga gipauswag pinaagi sa suporta alang sa structured nga mga format sa datos sama sa mga lista, hash, ug mga set, ingon man ang abilidad sa pagpadagan sa server-side script handler sa Lua. Ang code sa proyekto gihatag ubos sa lisensya sa BSD. Ang mga dugang nga module nga nagtanyag mga advanced nga kapabilidad alang sa mga tiggamit sa korporasyon, sama sa RediSearch, RedisGraph, RedisJSON, RedisML, RedisBloom, gihatag sa ilawom sa usa ka proprietary RSAL nga lisensya sukad 2019. Ang proyekto sa GoodFORM, nga bag-o lang nag-stagnant, misulay sa pagpadayon sa pagpauswag sa mga bukas nga bersyon sa kini nga mga module sa ilawom sa lisensya sa AGPLv3.

Dili sama sa mga sistema sa pagtipig sa memorya sama sa Memcached, gisiguro ni Redis nga ang data padayon nga gitipigan sa disk ug gisiguro nga ang database magpabilin nga wala’y katapusan kung adunay usa ka pag-crash. Ang source code sa proyekto giapod-apod ubos sa lisensya sa BSD. Ang mga librarya sa kliyente anaa alang sa labing inila nga mga pinulongan, lakip ang Perl, Python, PHP, Java, Ruby, ug Tcl. Ang Redis nagsuporta sa mga transaksyon, nga nagtugot kanimo sa pagpatuman sa usa ka grupo sa mga sugo sa usa ka lakang, pagsiguro sa pagkamakanunayon ug pagkamakanunayon (mga sugo gikan sa uban nga mga hangyo dili makabalda) sa pagpatuman sa usa ka gihatag nga hugpong sa mga sugo, ug sa kaso sa mga problema, nga nagtugot kaninyo sa roll balik kausaban. Ang tanan nga datos hingpit nga naka-cache sa RAM.

Ang mga sugo sama sa increment/decrement, standard list ug set operations (union, intersection), key renaming, multiple selections, ug sorting functions gihatag para sa data management. Duha ka mga paagi sa pagtipig ang gisuportahan: matag karon ug unya nga pag-synchronize sa data sa disk ug pagpadayon sa usa ka pagbag-o nga log sa disk. Sa ikaduha nga kaso, ang hingpit nga kaluwasan sa tanan nga mga pagbag-o gigarantiyahan. Posible ang pag-organisar sa master-slave data replication sa daghang mga server, nga gihimo sa usa ka non-blocking mode. Anaa usab ang "publish/subscribe" messaging mode, diin gihimo ang usa ka channel, ang mga mensahe nga gikan niini ipanghatag sa mga kliyente pinaagi sa suskrisyon.

Pangunang mga pagbag-o sa Redis 7.0:

  • Gidugang nga suporta alang sa mga gimbuhaton sa kilid sa server. Dili sama sa gisuportahan kaniadto nga mga script sa pinulongang Lua, ang mga gimbuhaton wala gihigot sa aplikasyon ug gitumong sa pagpatuman sa dugang nga lohika nga nagpalapad sa mga kapabilidad sa server. Ang mga gimbuhaton giproseso nga dili mabulag sa datos ug may kalabotan sa database, ug dili sa aplikasyon, lakip ang pagkopya ug gitipigan sa padayon nga pagtipig.
  • Ang ikaduha nga edisyon sa ACL gisugyot, nga nagtugot kanimo sa pagkontrolar sa pag-access sa datos base sa mga yawe ug nagtugot kanimo sa paghubit sa lain-laing mga hugpong sa mga lagda alang sa pag-access sa mga sugo nga adunay abilidad sa pagbugkos sa pipila ka mga tigpili (mga set sa mga permiso) sa matag user. Ang matag yawe mahimong mailhan sa usa ka piho nga awtoridad, pananglitan, mahimo nimong limitahan ang pag-access sa pagbasa o pagsulat lamang sa usa ka piho nga subset sa mga yawe.
  • Ang usa ka partitioned (sharded) nga pagpatuman sa Publish-Subscribe nga paradigm sa pag-apod-apod sa mensahe nga nagdagan sa usa ka cluster gihatag, diin ang usa ka mensahe gipadala sa usa ka piho nga node diin ang usa ka channel sa mensahe gilakip, pagkahuman kini nga mensahe gi-redirect sa nahabilin nga mga node nga gilakip. sa tipak. Ang mga kliyente makadawat og mga mensahe pinaagi sa pag-subscribe sa usa ka channel, pinaagi sa pagkonektar sa main node ug sa secondary nodes sa seksyon. Ang kontrol gihimo gamit ang SSUBSCRIBE, SUNSUBSCRIBE ug SPUBLISH nga mga sugo.
  • Gidugang nga suporta alang sa pagproseso sa mga subcommand sa kadaghanan nga mga konteksto.
  • Bag-ong mga sugo gidugang:
    • ZMPOP, BZMPOP.
    • LMPOP, BLMPOP.
    • SINTERCARD, ZINTERCARD.
    • SPUBLISH, SSUBSCRIBE, SUNSUBSCRIBE, PUBSUB SHARDCHANNELS/SHARDNUMSUB.
    • EXPIRETIME, PEXPIRETIME.
    • EVAL_RO, EVALSHA_RO, SORT_RO.
    • FUNCTION *, FCALL, FCALL_RO.
    • COMMAND DOCS, COMMAND LIST.
    • LATENCY HISTOGRAM.
    • CLUSTER SHARDS, CLUSTER LINKS, CLUSTER DELSLOTSRANGE, CLUSTER ADDSLOTSRANGE.
    • KLIENTE NO-EVICT.
    • ACL DRYRUN.
  • Ang abilidad sa pagproseso sa daghang mga configuration sa usa ka higayon sa usa ka CONFIG SET/GET tawag gihatag.
  • Ang mga kapilian nga "-json", "-2", "-scan", "-functions-rdb" gidugang sa redis-cli utility.
  • Sa kasagaran, ang pag-access sa kliyente sa mga setting ug mga sugo nga makaapekto sa seguridad gi-disable (pananglitan, ang DEBUG ug MODULE nga mga sugo gi-disable, ang pagbag-o sa mga configuration nga adunay proteksyon_CONFIG nga bandila gidili). Ang Redis-cli wala na magpagawas sa mga sugo nga adunay sensitibo nga datos sa usa ka file sa kasaysayan.
  • Usa ka dako nga bahin sa mga pag-optimize ang gipaila nga gitumong sa pagdugang sa pasundayag ug pagkunhod sa konsumo sa memorya. Pananglitan, ang konsumo sa panumduman naminusan pag-ayo kung gipagana ang mode sa cluster, kung nagpahigayon mga operasyon sa copy-on-write, ug kung nagtrabaho sa mga hash ug zset nga yawe. Gipauswag nga lohika alang sa pag-flush sa data sa disk (fsync nga tawag). Ang gidaghanon sa mga packet sa network ug mga tawag sa sistema sa pagpadala sa mga tubag sa kliyente gipakunhod. Ang kahusayan sa pagkopya gipauswag.
  • Ang pagkahuyang nga CVE-2022-24735 sa palibot alang sa pagpatuman sa mga script sa Lua naayo na, nga nagtugot kanimo nga ilisan ang imong kaugalingon nga code sa Lua ug makab-ot ang pagpatuman niini sa konteksto sa lain nga tiggamit, lakip ang usa nga adunay mas taas nga mga pribilehiyo.
  • Giayo nga pagkahuyang nga CVE-2022-24736, nga nagtugot sa proseso sa redis-server nga mag-crash tungod sa NULL pointer dereference. Ang pag-atake gihimo pinaagi sa pagkarga sa espesyal nga gidisenyo nga mga script sa Lua.

Source: opennet.ru

Idugang sa usa ka comment