ื“ื™ Dragonfly ืคึผืจื•ื™ืขืงื˜ ืื™ื– ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ ืึท ืคืึทืกื˜ืขืจ ืคืึทืจื‘ื™ื™ึทื˜ ืคึฟืึทืจ Redis ืื•ืŸ Memcached

ื“ืขืจ ืขืจืฉื˜ืขืจ ืžืขืœื“ื•ื ื’ ืคื•ืŸ ื“ื™ ื“ืจืึทื’ืึธื ืคืœื™ ืื™ืŸ-ื–ื™ืงืึธืจืŸ ืงืึทื˜ืฉื™ื ื’ ืกื™ืกื˜ืขื ืื™ื– ื‘ื ื™ืžืฆื, ืคึผืจืึทื•ื•ื™ื™ื“ื™ื ื’ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ ืžืขืžืงืึทื˜ืฉืขื“ ืื•ืŸ ืจืขื“ื™ืก ืคึผืจืึธื˜ืึธืงืึธืœืก, ืึธื‘ืขืจ ืึทืœืึทื•ื™ื ื’ ืงื•ื•ืขืจื™ื– ืฆื• ื–ื™ื™ืŸ ืขืงืกืึทืงื™ื•ื˜ืึทื“ ืžื™ื˜ ืคื™ืœ ื”ืขื›ืขืจ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืื•ืŸ ื•ื•ื™ื™ื ื™ืงืขืจ ื–ื›ึผืจื•ืŸ ืงืึทื ืกืึทืžืฉืึทืŸ. ื“ื™ ืกื™ืกื˜ืขื ืžืึทื ื™ืคึผื™ืึทืœื™ื™ืฅ ื“ืึทื˜ืŸ ืื™ืŸ ืฉืœื™ืกืœ / ื•ื•ืขืจื˜ ืคึฟืึธืจืžืึทื˜ ืื•ืŸ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜ ื•ื•ื™ ืึท ืœื™ื™ื˜ื•ื•ื™ื™ื˜ ืœื™ื™ื–ื•ื ื’ ืฆื• ืคืึทืจื’ื™ื›ืขืจืŸ ื“ื™ ืึทืจื‘ืขื˜ ืคื•ืŸ ื”ื•ื™ืš-ืžืึทืกืข ื–ื™ื™ื˜ืœืขืš, ืงืึทื˜ืฉื™ื ื’ ืคึผืึทืžืขืœืขืš ืคึฟืจืื’ืŸ ืฆื• ื“ื™ DBMS ืื•ืŸ ื™ื ื˜ืขืจืžื™ื“ื™ื™ื˜ ื“ืึทื˜ืŸ ืื™ืŸ ื‘ืึทืจืึทืŸ. ื“ื™ ื“ืจืึทื’ืึธื ืคืœื™ ืงืึธื“ ืื™ื– ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ C / C ++ ืื•ืŸ ืื™ื– ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื•ื ื˜ืขืจ ื“ื™ BSL (ื‘ื™ื–ื ืขืก ืžืงื•ืจ ืœื™ืกืขื ืกืข).

ื“ื™ BSL ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ ืื™ื– ื’ืขื•ื•ืขืŸ ืคืืจื’ืขืœื™ื™ื’ื˜ ื“ื•ืจืš ื“ื™ ืงืึธ-ื’ืจื™ื ื“ืขืจืก ืคื•ืŸ MySQL ื•ื•ื™ ืึทืŸ ืึธืœื˜ืขืจื ืึทื˜ื™ื•ื• ืฆื• ื“ื™ Open Core ืžืึธื“ืขืœ. ื“ื™ ืขืกืึทื ืก ืคื•ืŸ BSL ืื™ื– ืึทื– ื“ื™ ืงืึธื“ ืคื•ืŸ ืึทื•ื•ืึทื ืกื™ืจื˜ืข ืคืึทื ื’ืงืฉืึทื ืึทืœื™ื˜ื™ ืื™ื– ื˜ื›ื™ืœืขืก ื‘ื ื™ืžืฆื ืคึฟืึทืจ ืžืึทื“ืึทืคืึทืงื™ื™ืฉืึทืŸ, ืึธื‘ืขืจ ืคึฟืึทืจ ืขื˜ืœืขื›ืข ืžืึธืœ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜ ืคืจื™ื™ ื‘ืœื•ื™ื– ืื•ื™ื‘ ื ืึธืš ื‘ืื“ื™ื ื’ื•ื ื’ืขืŸ ื–ืขื ืขืŸ ื‘ืื’ืขื’ื ื˜, ื•ื•ืึธืก ื“ืึทืจืคืŸ ื“ื™ ืงื•ื™ืคืŸ ืคื•ืŸ ืึท ื’ืขืฉืขืคื˜ ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ ืฆื• ืกืขืจืงืึทืžื•ื•ืขื ื˜. ื ืึธืš ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ ื˜ืขืจืžื™ื ืขืŸ ืคื•ืŸ ื“ื™ Dragonfly ืคึผืจื•ื™ืขืงื˜ ื“ืึทืจืคืŸ ื“ื™ ืงืึธื“ ืฆื• ื–ื™ื™ืŸ ื˜ืจืึทื ืกืคืขืจื“ ืฆื• ื“ื™ Apache 2.0 ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ ื‘ืœื•ื™ื– ืื•ื™ืฃ ื™ื•ื ื™ 1, 2027. ื‘ื™ื– ื“ืขื ืฆื™ื™ื˜, ื“ื™ ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ ืึทืœืึทื•ื– ื“ื™ ื ื•ืฆืŸ ืคื•ืŸ ื“ื™ ืงืึธื“ ื‘ืœื•ื™ื– ืฆื• ืขื ืฉื•ืจ ื“ื™ ืึธืคึผืขืจืึทืฆื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื–ื™ื™ึทืŸ ื‘ืึทื“ื™ื ื•ื ื’ืก ืื•ืŸ ืคึผืจืึธื“ื•ืงื˜ืŸ, ืึธื‘ืขืจ ืคึผืจืึธื•ื›ื™ื‘ืึทืฅ ื ื•ืฆืŸ ืคึฟืึทืจ ื“ื™ ืฉืึทืคื•ื ื’ ืคื•ืŸ ื‘ืึทืฆืึธืœื˜ ื•ื•ืึธืœืงืŸ ื‘ืึทื“ื™ื ื•ื ื’ืก ื•ื•ืึธืก ืึทืงื˜ ื•ื•ื™ ืึทืŸ ืึทื“ื™ืฉืึทืŸ ืฆื• ื“ืจืึทื’ืึธื ืคืœื™.

ืœื•ื™ื˜ ื“ื™ ื“ืขื•ื•ืขืœืึธืคึผืขืจืก ืื•ืŸ ื“ืขืžืึทื ืกื˜ืจื™ื™ื˜ื™ื“ ื˜ืขืกืฅ, Dragonfly ืงืœื™ื™ืžื– ืฆื• ื–ื™ื™ืŸ ื“ื™ ืคืึทืกื˜ืึทืกื˜ ื–ื›ึผืจื•ืŸ ืกื˜ืึธืจื™ื“ื–ืฉ ืกื™ืกื˜ืขื. ืงืึทืžืคึผืขืจื“ ืžื™ื˜ Redis, Dragonfly ืึทื˜ืฉื™ื•ื•ื“ ืึท 25-ืคืึทืจืœื™ื™ื’ืŸ ืคืึทืจื’ืจืขืกืขืจืŸ ืื™ืŸ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืื•ืŸ ืึท ื“ืจื™ื™-ืคืึทืจืœื™ื™ื’ืŸ ืจืขื“ื•ืงืฆื™ืข ืื™ืŸ ื–ื›ึผืจื•ืŸ ืงืึทื ืกืึทืžืฉืึทืŸ ืคึฟืึทืจ ื˜ื™ืคึผื™ืฉ ื•ื•ืขืจืงืœืึธื•ื“ื–. ืื™ื™ืŸ ื“ืจืึทื’ืึธื ืคืœื™ ืกืขืจื•ื•ืขืจ ืงืขื ืขืŸ ืคึผืจืึธืฆืขืก ืžื™ืœื™ืึทื ื– ืคื•ืŸ ืจื™ืงื•ื•ืขืก ืคึผืขืจ ืกืขืงื•ื ื“ืข, ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืื™ืŸ ื“ื™ Amazon EC2 c6gn.16xlarge ืกื•ื•ื™ื•ื•ืข ืขืก ืื™ื– ื’ืขื•ื•ืขืŸ ืžืขื’ืœืขืš ืฆื• ื“ืขืจื’ืจื™ื™ื›ืŸ ืึท ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ 3.8 ืžื™ืœื™ืึธืŸ ืจื™ืงื•ื•ืขืก ืคึผืขืจ ืกืขืงื•ื ื“ืข.

ื“ื™ Dragonfly ืคึผืจื•ื™ืขืงื˜ ืื™ื– ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ ืึท ืคืึทืกื˜ืขืจ ืคืึทืจื‘ื™ื™ึทื˜ ืคึฟืึทืจ Redis ืื•ืŸ Memcached

ืื™ืŸ ื˜ืขืกืฅ ืคึฟืึทืจ ืกื˜ืึธืจื™ื ื’ 5 ื’ื™ื’ืื‘ื™ื™ื˜ ืคื•ืŸ ื“ืึทื˜ืŸ, ื“ืจืึทื’ืึธื ืคืœื™ ืคืืจืœืื ื’ื˜ 30% ื•ื•ื™ื™ื ื™ืงืขืจ ื–ื›ึผืจื•ืŸ ื•ื•ื™ Redis. ื•ื•ืขืŸ ืงืจื™ื™ื™ื˜ื™ื ื’ ืกื ืึทืคึผืฉืึทืฅ ืžื™ื˜ ื“ื™ "bgsave" ื‘ืึทืคึฟืขืœ, ื–ื›ึผืจื•ืŸ ืงืึทื ืกืึทืžืฉืึทืŸ ื™ื ืงืจื™ืกื™ื–, ืึธื‘ืขืจ ืื™ืŸ ืฉืคึผื™ืฅ ืžืึธื•ืžืึทื ืฅ ืขืก ื‘ืœื™ื™ื‘ื˜ ื›ึผืžืขื˜ ื“ืจื™ื™ ืžืึธืœ ื•ื•ื™ื™ื ื™ืงืขืจ ื•ื•ื™ ืื™ืŸ Redis, ืื•ืŸ ื“ื™ ืžืึธืžืขื ื˜ื‘ื™ืœื“ ืจืขืงืึธืจื“ื™ื ื’ ืึธืคึผืขืจืึทืฆื™ืข ื–ื™ืš ืื™ื– ืคื™ืœ ืคืึทืกื˜ืขืจ (ืื™ืŸ ื“ื™ ืคึผืจืึธื‘ืข, ืึท ืžืึธืžืขื ื˜ื‘ื™ืœื“ ืื™ืŸ Dragonfly ืื™ื– ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ 30 ืกืขืงื•ื ื“ืขืก, ื‘ืฉืขืช Redis - ืื™ืŸ 42 ืกืขืงื•ื ื“ืขืก).

ื“ื™ Dragonfly ืคึผืจื•ื™ืขืงื˜ ืื™ื– ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ ืึท ืคืึทืกื˜ืขืจ ืคืึทืจื‘ื™ื™ึทื˜ ืคึฟืึทืจ Redis ืื•ืŸ Memcached

ื”ื•ื™ืš ืคืึธืจืฉื˜ืขืœื•ื ื’ ืื™ื– ืึทื˜ืฉื™ื•ื•ื“ ื“ืึทื ืง ืฆื• ืึท ืžื•ืœื˜ื™-ื˜ืจืขื“ืขื“ ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ ืึธืŸ ื™ื™ึทื ื˜ื™ื™ืœื•ื ื’ ืจืขืกื•ืจืกืŸ (ืฉืขืจื“-ื’ืึธืจื ื™ืฉื˜), ื•ื•ืึธืก ืžื™ื˜ืœ ืึทื– ื™ืขื“ืขืจ ืคืึธื“ืขื ืื™ื– ืึทืกื™ื™ื ื“ ืึท ื‘ืึทื–ื•ื ื“ืขืจ ื‘ืึทื–ื•ื ื“ืขืจ ืคึผืจืึทืกืขืกืขืจ ืžื™ื˜ ื–ื™ื™ืŸ ืื™ื™ื’ืขื ืข ื˜ื™ื™ืœืŸ ืคื•ืŸ ื“ืึทื˜ืŸ, ืืจื‘ืขื˜ืŸ ืึธืŸ ืžื™ื•ื˜ืขืงืกื™ื– ืื•ืŸ ื•ืžื“ืจื™ื™ ืœืึทืงืก. ืฆื• ืขื ืฉื•ืจ ืึทื˜ืึธืžื™ืงื™ื™ื˜ ื•ื•ืขืŸ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ืงื™ื™ืคืœ ืฉืœื™ืกืœืขืŸ, ืœื™ื™ื˜ื•ื•ื™ื™ื˜ VLL ืœืึทืงืก ื–ืขื ืขืŸ ื’ืขื ื™ืฆื˜. ืฆื• ื™ืคื™ืฉืึทื ื˜ืœื™ ืงืจืึธื ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ืื™ืŸ ื–ื›ึผืจื•ืŸ, ื“ื™ ื“ืึทืฉื˜ืึทื‘ืœืข ืกื˜ืจื•ืงื˜ื•ืจ ืื™ื– ื’ืขื ื™ืฆื˜, ื•ื•ืึธืก ื™ืžืคึผืœืึทืžืึทื ืฅ ืึท ื˜ื™ืคึผ ืคื•ืŸ ืคึผืึทืจื˜ื™ืฉืึทื ื“ ื”ืึทืฉ ื˜ื™ืฉ.

ืฆื•ื•ื™ืฉืŸ ื“ื™ ืคึฟืขื™ึดืงื™ื™ื˜ืŸ ื‘ื ื™ืžืฆื ืื™ืŸ ื“ืขืจ ืขืจืฉื˜ืขืจ ืžืขืœื“ื•ื ื’, ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื“ื™ RESP2 ืคึผืจืึธื˜ืึธืงืึธืœ ืื•ืŸ 130 Redis ืงืึทืžืึทื ื“ื– ืื™ื– ื‘ืืžืขืจืงื˜, ื•ื•ืึธืก ื‘ืขืขืจืขืš ืงืึธืจืึทืกืคึผืึทื ื“ื– ืฆื• ื“ื™ ืคืึทื ื’ืงืฉืึทื ืึทืœื™ื˜ื™ ืคื•ืŸ ื“ื™ Redis 2.8 ืžืขืœื“ื•ื ื’. ืื™ืŸ ืึทื“ื™ืฉืึทืŸ, ื“ืจืึทื’ืึธื ืคืœื™ ืฉื˜ื™ืฆื˜ ืึทืœืข ืžืขืžืงืึทืฉื˜ ืงืึทืžืึทื ื“ื– ืึทื—ื•ืฅ CAS (ื˜ืฉืขืง-ืื•ืŸ-ืฉื˜ืขืœืŸ), ื’ื™ื˜ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ื™ื™ืกื™ื ื’ืงืจืึทื ืึทืก ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืคึฟืึทืจ ืฉืืคืŸ ืกื ืึทืคึผืฉืึทืฅ, ืคึผืจืึธื•ื•ื™ื“ืขืก ืคึผืจื™ื“ื™ืงื˜ืึทื‘ืึทืœ ื–ื›ึผืจื•ืŸ ืงืึทื ืกืึทืžืฉืึทืŸ, ืคึผืจืึธื•ื•ื™ื“ืขืก ืึท ื’ืขื‘ื•ื™ื˜-ืื™ืŸ Lua 5.4 ื™ื‘ืขืจื–ืขืฆืขืจ ืื•ืŸ ืฉื˜ื™ืฆื˜ ืงืึธืžืคึผืœืขืงืก ื“ืึทื˜ืŸ ื˜ื™ื™ืคึผืก ืึทื–ืึท ื•ื•ื™ ื”ืึทืฉืขืก, ืฉื˜ืขืœื˜, ืื•ืŸ ืจืฉื™ืžื•ืช (ZSET, HSET, LIST, SETS ืื•ืŸ STRING).

ื ืงืึทื˜ืฉื™ื ื’ ืžืึธื“ืข ืื™ื– ืกืขืคึผืขืจืึทื˜ืœื™ ื‘ื ื™ืžืฆื, ื•ื•ืึธืก ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ืจื™ืคึผืœื™ื™ืกื™ื– ืึทืœื˜ ื“ืึทื˜ืŸ ืžื™ื˜ ื ื™ื™ึทืข ื“ืึทื˜ืŸ ื ืึธืš ื“ื™ ืคืจื™ื™ ื–ื›ึผืจื•ืŸ ืื™ื– ื•ื™ืกื’ืขืžืึทื˜ืขืจื˜. ืขืก ืื™ื– ืžืขื’ืœืขืš ืฆื• ืฆื•ื˜ืฉืขืคึผืขืŸ ืึท ืœืขื‘ืŸ ืฆื• ื“ื™ ื“ืึทื˜ืŸ ื‘ืขืฉืึทืก ื•ื•ืึธืก ื“ื™ ื“ืึทื˜ืŸ ื–ืขื ืขืŸ ื‘ืึทื˜ืจืึทื›ื˜ ื•ื•ื™ ื‘ืึทื˜ื™ื™ึทื˜ื™ืง. ืกื˜ืึธืจื™ื“ื–ืฉ ืฉื˜ืึทื˜ ืงืขื ืขืŸ ื–ื™ื™ืŸ ืคืœืึทืฉื˜ ืฆื• ื“ื™ืกืง ืื™ืŸ ื“ืขืจ ื”ื™ื ื˜ืขืจื’ืจื•ื ื˜ ืคึฟืึทืจ ืฉืคึผืขื˜ืขืจ ืึธืคึผื–ื•ืš ื ืึธืš ืจื™ืกื˜ืึทืจื˜. ืฆื• ืคื™ืจืŸ ื“ื™ ืกื™ืกื˜ืขื, ืึท ื”ื˜ื˜ืคึผ ืงืึทื ืกืึธื•ืœ ืื™ื– ืฆื•ื’ืขืฉื˜ืขืœื˜ (ื‘ื™ื ื“ื– ืฆื• TCP ืคึผืึธืจื˜ 6379) ืื•ืŸ ืึท API ืคึฟืึทืจ ืฆื•ืจื™ืงืงื•ืžืขืŸ ืžืขื˜ืจื™ืงืก ืงืึทืžืคึผืึทื˜ืึทื‘ืึทืœ ืžื™ื˜ ืคึผืจืึธืžืขื˜ื”ืขื•ืก. ืื™ืŸ ืฆื•ืงื•ื ืคึฟื˜ ื•ื•ืขืจืกื™ืขืก, ืžื™ืจ ืคึผืœืึทื ื™ืจืŸ ืฆื• ื™ืงืกืคึผืึทื ื“ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ Redis ืงืึทืžืึทื ื“ื– ืื•ืŸ ื™ื ืกื˜ืจื•ืžืขื ื˜ ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ืจืขืคึผืœืึทืงื™ื™ื˜ ืกื˜ืึธืจื™ื“ื–ืฉ ืฆื• ืฆื•ืฉื˜ืขืœืŸ ืฉื•ืœื“ ื˜ืึธืœืขืจืึทื ืฅ ืื•ืŸ ืžืึทืกืข ื‘ืึทืœืึทื ืกื™ื ื’.

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’