как предотвратить взрыв запроса с ProxySql - PullRequest
0 голосов
/ 12 апреля 2019

У меня периодически возникает проблема с моей БД, когда время от времени я получаю серию запросов (один и тот же запрос) от моих серверов приложений.Я мало что могу сделать для этой стороны (приложения), так как я не контролирую его.

Мне удалось реализовать кэширование запросов с помощью Proxysql, и это отлично сработало, чтобы уменьшить нагрузку на мою БД.Увы, пакетная проблема все еще существует.

Есть ли способ заставить Proxysql понять, что данный запрос уже находится в полете, и приостановить все последующие запросы на тот же запрос до завершения первого?

как проверить:

for i in {1..10}; do mysql -u<read_user> -p<read_pwd> -h127.0.0.1 -P16033 < qry.sql & done

запуск show processlist на сервере mysql, я ожидаю увидеть только одно соединение, выполняющее запрос.Фактический результат - 10 соединений для одного и того же запроса.

...