ශ්‍රී ලංකාවේ නවතම තාක්ෂණික පුවත් 2026-07-28, Tuesday
💻 ක්‍රමලේඛනය · 🕒 කියවීමට විනාඩි 2 · 👁 1

Redis-packhash npm පැකේජය සමඟ Listpack Hash මතකය 87% කින් අඩු කරමු

Redis-packhash npm පැකේජය සමඟ Listpack Hash මතකය 87% කින් අඩු කරමු

Redis හි ලක්ෂ ගණනක කුඩා අගයන් තනි තනි යතුරු ලෙස සුරකින්නෙමි නම්, මතක භාවිතය අධික වේ. එම ගැටළුවට විසඳුමක් ලෙස යතුරු සමූහ කර hash ලෙස ගබඩා කිරීම, සහ ඒ hash ගොඩනැගීම Listpack කේතනයෙන් සිදු කිරීමයි.

Listpack යනු Redis 7.0+ හි හඳුන්වා දෙන සුළු, සංකුචිත ආකාරයේ දත්ත ගොඩනැගීමකි. හොඳින් සැලසුම් කළ hash එකක් Listpack භාවිතා කරන විට, 1 මිලියනයේ ඉක්මවා යන කුඩා යතුරු 53.8 MB මතකයෙන් 6.9 MB දක්වා අඩු වේ – එනම් 87% ක ඉතිරි කිරීමක්.

මෙම ප්‍රතිලාභ ලබා ගැනීමට, hash ගණන, යතුරු බෙදාහැරීම, සහ bucket ගණන යනාදිය නිරීක්ෂණය කළ යුතුය. ඒ සඳහා redis-packhash නමින් npm පැකේජයක් නිර්මාණය කර ඇත. මෙය client‑agnostic වන අතර, ioredis, node‑redis වැනි Redis client සමඟ hset, hget, hdel ක්‍රියාමාර්ග භාවිතා කරයි.

ඉන්ස්ටෝල් කිරීම සරලයි: npm install redis-packhash. පසුදා, ඔබේ Redis client එක Pass කර, expectedKeys (ඔබ ගබඩා කිරීමට බලාපොරොත්තු වන යතුරු ගණන) නියම කිරීමෙන්, පැකේජය ස්වයංක්‍රියව bucket ගණන ගණනය කර, යතුරු සමස්ථ ලෙස බෙදා හරියයි.

උදාහරණයක් ලෙස, පරිශීලකයින්ගේ භාෂා සැකසුම් ගබඩා කිරීමේදී:

import { PackHash } from "redis-packhash";
import Redis from "ioredis";
const locales = new PackHash(new Redis(), { namespace: "user:locale", expectedKeys: 1_000_000 });
await locales.set(userId, "en-US");
const locale = await locales.get(userId);

මෙම API එක set, get, has, del, mset, mget වැනි ක්‍රියා මාරුද ලබා දේ. සියලුම යතුරු string වර්ගයක් විය යුතු අතර, FNV‑1a hash function එක භාවිතයෙන් bucket ගණන සමතලව බෙදා හරින නිසා, UUID, ඊ‑මේල් වැනි අංක නොවන හැඳුනුම් පවා සමීපව බෙදා හැරේ.

ශ්‍රී ලංකාවට ඇති වැදගත්කම

ශ්‍රී ලංකාවේ බොහෝ startups හා IT සමාගම්, Redis භාවිතයෙන් real‑time caching, session management, හා leaderboard වැනි සේවාවන් සපයයි. redis‑packhash භාවිතා කිරීමෙන්, අඩු මතක පරිභෝජනය නිසා server හි වියදම් අඩු වේ, ඒත් performance අඩු නොවේ. විශේෂයෙන්, තරුණ සංවර්ධකයන්ට memory‑efficient data structures පිළිබඳ ප්‍රායෝගික අවබෝධයක් ලබා දේ. එමෙන්ම, ශ්‍රී ලංකාවේ data‑center හි power cost අඩුවීමත්, sustainability අරමුණු ඉටු කිරීමත් සමඟ ව්‍යාපාරික ප්‍රතිලාභ ලැබේ.

අන්තර්ජාලය මඟින් පවතින open‑source ප්‍රොජෙක්ට්වලට දායක වීමට, මේ වගේ tools භාවිතා කිරීමෙන් පළපුරුද්දක් එකතු කර, ගෝලීය තාක්ෂණ ප්‍රජාව තුළ ශ්‍රී ලාංකිකයන්ගේ නාමය උසස් කර ගත හැක.

අවසානයේ, redis‑packhash ඔබේ Redis‑based යෙදුම්වල memory footprint එක සැලකිල්ලට ගෙන, scaling අවශ්‍යතාවයන්ට ඉක්මනින් පිළිතුරු දෙයි. මේ අවස්ථාවේදී, expectedKeys පරාමිතිය නිවැරදිව සැකසීම අත්‍යවශ්‍යයි; අඩු නම් bucket overflow වෙයි, වැඩි නම් අතිරේක overhead එකක් පමණක් ඇතිවේ.

💡 ඔබේ Redis ව්‍යාපෘතියට redis-packhash දැන් එක්කර බලන්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#Redis #Node.js #npm #Listpack #Programming #Sri Lanka