У меня периодически возникает проблема с моей БД, когда время от времени я получаю серию запросов (один и тот же запрос) от моих серверов приложений.Я мало что могу сделать для этой стороны (приложения), так как я не контролирую его.
Мне удалось реализовать кэширование запросов с помощью 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 соединений для одного и того же запроса.