Назад к вопросам
СБЕР
Junior — Middle
97
Опыт ли у вас решения задач, связанных с оптимизацией производительности баз данных?
Компании, где спрашивали
Ответ от нейросети
sobes.tech 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;
}
Такой подход позволяет эффективно использовать ресурсы и уменьшить время отклика базы данных.