Есть Метод который прослушивает порт 8083, при возникновении события массив передается в другой метод.
switch e["Event"] {
case "SomeEvent":
go someMethod(e)
}
в методе открываю соединение с БД, выполняю запрос и закрываю соединение.
func someMethod(e map[string]string) {
var tag User
db, err := sql.Open("mysql", "user:pass@tcp(10.10.10.10:3036)/dbname")
if err != nil {
log.Print(err.Error())
}
err = db.QueryRow("SELECT name FROM users where id = ?", e["ID"]).Scan(&tag.Name)
if err != nil {
panic(err.Error())
}
db.Close()
При выполнении вылетает to many connections.
Вопрос : Как мне открыть соединение один раз и использовать его в методе?