Sobes.tech
Junior — Middle

Kas olete kasutanud Redis andmete vahemälu eesmärgil?

sobes.tech AI

Vastus AI-lt

Jah, Redis kasutatakse sageli andmete vahemällu salvestamiseks tänu oma suurele kiirusele mäluandmetega töötamisel. Node.js-is saab kasutada paketti redis, et suhelda Redis-serveriga.

Näide päringu tulemuse vahemällu salvestamisest:

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)); // vahemälu 1 tund
        resolve(freshData);
      }
    });
  });
}

// Kasutus:
// getCachedData('user:123', () => fetchUserFromDB(123))

See lähenemine vähendab koormust andmebaasile ja kiirendab rakenduse vastamisaega.