Sobes.tech
Junior — Middle

Имали ли сте опит в решаването на проблеми, свързани с оптимизацията на производителността на базите данни?

sobes.tech AI

Отговор от AI

Оптимизацията на производителността на базите данни в Node.js често включва няколко подхода:

  • Използване на индекси за ускоряване на заявките.
  • Кеширане на често заявявани данни (например с Redis).
  • Оптимизация на самите SQL заявки, като се избягват излишни JOIN и подзаявки.
  • Използване на пулове от връзки за ефективно управление на връзките към базата.
  • Асинхронна обработка на заявки за подобряване на отзивчивостта на приложението.

Пример за използване на пул от връзки с MySQL в Node.js:

const mysql = require('mysql2/promise');

const pool = mysql.createPool({
  host: 'localhost',
  user: 'user',
  password: 'password',
  database: 'testdb',
  waitForConnections: true,
  connectionLimit: 10,
  queueLimit: 0
});

async function getUsers() {
  const [rows] = await pool.query('SELECT * FROM users WHERE active = ?', [1]);
  return rows;
}

Този подход позволява ефективно използване на ресурсите и намалява времето за реакция на базата данни.