Ny tetikasa Dragonfly dia mamolavola fanoloana haingana kokoa an'i Redis sy Memcached

Misy ny famoahana voalohany ny rafitra caching ao anaty fitadidiana Dragonfly, manome fanohanana ny protocols Memcached sy Redis, saingy mamela ny fangatahana hotanterahina miaraka amin'ny fampisehoana avo lenta kokoa sy ny fanjifana fahatsiarovana kely kokoa. Ny rafitra dia manodinkodina ny angona amin'ny endrika fanalahidy / sanda ary azo ampiasaina ho vahaolana maivana hanafainganana ny asan'ny tranokala avo lenta, mameno ny fangatahana miadana amin'ny DBMS sy ny angona manelanelana amin'ny RAM. Ny kaody Dragonfly dia voasoratra amin'ny C/C++ ary zaraina eo ambanin'ny BSL (Business Source License).

Ny fahazoan-dΓ lana BSL dia natolotry ny mpiara-manorina ny MySQL ho solon'ny modely Open Core. Ny fototry ny BSL dia ny hoe ny code of advanced functionality dia azo ovaina amin'ny voalohany, fa mandritra ny fotoana fohy dia azo ampiasaina maimaim-poana raha tsy misy fepetra fanampiny, izay mitaky ny fividianana fahazoan-dΓ lana ara-barotra mba hialana. Ny fepetra fahazoan-dΓ lana fanampiny amin'ny tetikasa Dragonfly dia mitaky ny hamindrana ny kaody amin'ny lisansa Apache 2.0 raha tsy amin'ny 1 Jona 2027. Mandra-pahatongan'izany fotoana izany, ny fahazoan-dΓ lana dia mamela ny fampiasana ny kaody mba hiantohana ny fampandehanana ny serivisy sy ny vokatra, fa mandrara ny fampiasana amin'ny famoronana serivisy rahona karama izay miasa ho fanampiny amin'ny Dragonfly.

Araka ny filazan'ny mpamorona sy ny fitsapana naseho, Dragonfly dia milaza fa ny rafitra fitahirizana fahatsiarovana haingana indrindra. Raha oharina amin'ny Redis, Dragonfly dia nahatratra 25 heny ny fampiakarana ny fampisehoana ary in-telo heny ny fampihenana ny fanjifana fahatsiarovana ho an'ny enta-mavesatra mahazatra. Ny mpizara Dragonfly iray dia afaka mikarakara fangatahana an-tapitrisany isan-tsegondra, ohatra, ao amin'ny tontolo Amazon EC2 c6gn.16xlarge dia azo atao ny manatontosa fangatahana 3.8 tapitrisa isan-tsegondra.

Ny tetikasa Dragonfly dia mamolavola fanoloana haingana kokoa an'i Redis sy Memcached

Tamin'ny fitsapana fitahirizana angon-drakitra 5 GB, Dragonfly dia nitaky fahatsiarovana 30% latsaka noho ny Redis. Rehefa mamorona snapshots miaraka amin'ny baiko "bgsave", dia mitombo ny fanjifana fahatsiarovana, fa amin'ny fotoana faratampony dia mijanona ho avo telo heny noho ny any Redis, ary ny hetsika fandraketana snapshot dia haingana kokoa (amin'ny fitsapana, sary iray ao amin'ny Dragonfly dia nosoratana tamin'ny 30 segondra, raha i Redis - ao anatin'ny 42 segondra).

Ny tetikasa Dragonfly dia mamolavola fanoloana haingana kokoa an'i Redis sy Memcached

Ny fampandehanana avo lenta dia azo noho ny maritrano misy kofehy maromaro tsy misy fifampizarana loharanon-karena (mizara-tsy misy), izay midika fa ny kofehy tsirairay dia omena processeur misaraka miaraka amin'ny ampahany amin'ny angon-drakitra, miasa tsy misy mutexes sy mihidy mihodina. Mba hiantohana ny atomika rehefa miasa miaraka amin'ny lakile maro dia ampiasaina ny hidin-trano maivana VLL. Mba hitehirizana tsara ny vaovao ao anaty fitadidiana, dia ampiasaina ny rafitra dashtable, izay mametraka karazana latabatra hash voazarazara.

Anisan'ireo endri-javatra hita amin'ny famoahana voalohany, ny fanohanana ny protocol RESP2 sy ny baiko 130 Redis dia voamarika, izay mifanitsy amin'ny fiasan'ny famoahana Redis 2.8. Fanampin'izany, ny Dragonfly dia manohana ny baiko memcached rehetra afa-tsy ny CAS (check-and-set), manome fanohanana ho an'ny hetsika asynchronous amin'ny famoronana snapshots, manome fanjifana fahatsiarovana azo vinavinaina, manome mpandika teny Lua 5.4 naorina, ary manohana karazana data sarotra toy ny hash, sets, ary lisitra (ZSET, HSET, LIST, SETS ary STRING).

Misy fomba fiasa caching azo alaina mitokana, izay manolo ho azy ny angona taloha amin'ny angona vaovao rehefa lany ny fahatsiarovana maimaim-poana. Azo atao ny mametaka mandritra ny androm-piainany amin'ny angona izay heverina ho manan-danja. Ny toetry ny fitahirizana dia azo alaina amin'ny kapila ao ambadika mba hamerenana amin'ny laoniny aorian'ny fanombohana. Mba hitantana ny rafitra dia omena console HTTP (mifatotra amin'ny seranan-tsambo TCP 6379) ary API ho an'ny metrika famerenana, mifanaraka amin'ny Prometheus. Amin'ny dikan-teny ho avy, mikasa ny hanitatra ny fanohanana ny baiko Redis izahay ary hampihatra ny fahafahana mamerina ny fitehirizana mba hanomezana fandeferana diso sy fifandanjana entana.

Source: opennet.ru

Add a comment