Можно ли регулярно подключаться через 4-5 таблиц? - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть база данных, где я должен последовательно запросить / объединить 5 таблиц, чтобы получить URL, который будет помещен на сайт.

  1. Получить активную версию потока
  2. Получить ключ внутреннего потока версии
  3. Получить ключ внутреннего потока потока
  4. Получить ключ внутренней страницы
  5. Получить URL следующей страницы

Это было результатом попытки создать на нашем сайте решение «подключи и работай» для тестирования новых потоков.

Я ожидаю, что при пиковых временах трафика эта последовательность будет происходить примерно 200 раз в минуту (необходимослучается дважды на странице).

Это нормально?Стоит ли ожидать значительных недостатков производительности из-за этой реализации?Я что-то упустил?

1 Ответ

0 голосов
/ 07 марта 2019

Если вы проецируете тысячу запросов в секунду , то нам нужно кое-что обсудить.Всего несколько сотен за минуту проблем не должно быть.

Эти 5 шагов звучат как 5 SELECTs, где каждый основывается на том, что сделал предыдущий.Пожалуйста, узнайте о JOINs и подзапросах.Вероятно, вы можете написать один запрос , который выполняет всю задачу.Теперь вы можете быть ниже 100 в минуту.

Сколько у вас строк?Тысяча?Нет проблем.Миллион?Это зависит.

Индексы - ваш друг по производительности.Если у вас есть проблема с производительностью, решение может быть таким же простым, как добавление составного индекса.Если вы дойдете до этой точки, укажите SHOW CREATE TABLE и EXPLAIN SELECT ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...