@MalyshevDmitry

Как работать с несколькими серверами MySQL из под Node.JS одновременно?

Добрый день.

Есть мобильный проект. Социальная сеть. Все данные храним в MySQL, разбивая на логические шарды. "Горячие данные" храним в Redis, там же храним карту шард MySQL.

Бек-енд пишется на node.js (express)

Интересует, каким образом можно быстро обращаться к разным серверам MySQL в рамках обработки одного запроса к бек-енду?

Приведу пример.

Клиент обращается к бек-енду с запросом профиля пользователя с id = 1, который мы храним на сервере mysql-1 в шарде №1. В этот же момент другой клиент обращается к бек-енду с запросом профиля пользователя с id = 2, который хранится на другом сервере - mysql-2 в шарде №2.

Количество mysql серверов будет расти. И количество запросов к бек-енду будет расти. Инициализировать новое соединение к MySQL на каждый запрос к бек-енду - наверное, задача не самая лучшая.
  • Вопрос задан
  • 3118 просмотров
Пригласить эксперта
Ответы на вопрос 2
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Возможно, глупый вопрос: а почему не создавать при старте приложения отдельные коннекты к каждому серверу/шарду?
Ответ написан
AxisPod
@AxisPod
Посмотрите в сторону connection pool, поднимать каждый раз коннект, довольно дорогостоящая операция.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы