Sobes.tech
Junior — Middle

Tem experiência na resolução de problemas relacionados com a otimização do desempenho de bases de dados?

sobes.tech IA

Resposta da IA

A otimização do desempenho de bases de dados no Node.js frequentemente envolve várias abordagens:

  • Uso de índices para acelerar consultas.
  • Cache de dados frequentemente solicitados (por exemplo, usando Redis).
  • Otimização das próprias consultas SQL, evitando JOINs e subconsultas desnecessárias.
  • Uso de pools de conexões para gerir eficientemente as ligações à base de dados.
  • Processamento assíncrono de consultas para melhorar a capacidade de resposta da aplicação.

Exemplo de uso de um pool de conexões com MySQL no 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;
}

Este método permite usar eficientemente os recursos e reduzir o tempo de resposta da base de dados.