Ошибка слишком большого числа соединений для AWS -EC2 (Laravel, MySQL) - SQLSTATE [HY000] [1040] - PullRequest
0 голосов
/ 10 января 2020

Я хочу обрабатывать от 1000 до 10000 асин c запросов одновременно, и каждый запрос состоит из 2 MySQL запросов. Проблема заключается в том, что сервер может обработать запрос (подтвержденный через журналы https), но не может обработать его из-за «ошибки слишком большого числа соединений».

Вопросы:

  1. Следует Я увеличил «Максимальное количество пользовательских подключений» для MySQL и увеличил необходимое оборудование (или) Должен ли я связаться с администратором БД?
  2. Как устранить эту ошибку? (Я не могу подключиться к серверу, когда произошла эта ошибка для перезапуска MySQL, и он не возвращается в нормальное состояние, пока я не перезапущу весь сервер)

Я В настоящее время разберитесь с этой ситуацией. Если у кого-то есть идеи только по одному из этих вопросов, пожалуйста, ответьте, так что это может быть решающим вопросом для остальных. Поскольку я разработчик, это будет последний вариант go с платной поддержкой AWS.

1 Ответ

0 голосов
/ 10 января 2020

возможно, вам нужно пересмотреть архитектуру вашего приложения.

Если бы я был вами, и вместо того, чтобы пытаться обрабатывать все запросы одновременно, я бы делал следующее: - каждый раз, когда приложение получает запрос, я отправлю работу, которая будет выполнять эти SQL запрос. - У меня будет несколько фоновых рабочих, обрабатывающих эти задания, и я ограничу количество параллельных процессов тем, сколько БД может обработать.

таким образом, вы убедитесь, что все запросы обрабатываются без выполнения все это в одно и то же время

для получения дополнительной информации: https://laravel.com/docs/6.x/queues

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