Как разделить соединение MySQL между родителями и детьми с помощью Resque? - PullRequest
6 голосов
/ 05 января 2012

По умолчанию в Resque родительский процесс разветвляется, а дочерние процессы создают новое соединение с базой данных.

Это может сработать, но если у вас десятки рабочих, MySQL не может держать столько открытых соединений и начинает выдавать ошибки.

Каково было бы решение, чтобы дети использовали соединение MySQL своего родителя?

1 Ответ

3 голосов
/ 12 января 2012

К сожалению, нет безопасного способа передать соединение MySQL от родителя к потомкам.Я думаю, у вас есть два варианта для рассмотрения:

  1. Самое простое решение - настроить ваш сервер MySQL так, чтобы он мог принимать больше соединений (например: http://dev.mysql.com/doc/refman/5.5/en/too-many-connections.html).
  2. Посмотрите на альтернативыResque и / или проекты (например: beanstalkd, Redis и т. Д.), Которые позволяют избежать создания нескольких соединений с сервером MySQL.
...