Sobes.tech
Junior — Middle

Маалыматтарды кэшке салуу үчүн Redis колдондуңузбу?

sobes.tech AI

AIден жооп

Ооба, Redis көбүнчө маалыматтарды кэшдөө үчүн колдонулат, анткени ал эс тутумда иштөө ылдамдыгы жогору. Node.jsте redis пакети аркылуу Redis сервери менен өз ара аракеттенсе болот.

Суроо натыйжасын кэшке сактоо мисалы:

const redis = require('redis');
const client = redis.createClient();

async function getCachedData(key, fetchFunction) {
  return new Promise((resolve, reject) => {
    client.get(key, async (err, data) => {
      if (err) return reject(err);
      if (data) {
        return resolve(JSON.parse(data));
      } else {
        const freshData = await fetchFunction();
        client.setex(key, 3600, JSON.stringify(freshData)); // 1 сааттык кэш
        resolve(freshData);
      }
    });
  });
}

// Колдонуу:
// getCachedData('user:123', () => fetchUserFromDB(123))

Бул ыкма базанын жүктөмүн азайтып, тиркеменин жооп берүү убактысын тездетет.