"database/sql"
"fmt"
"github.com/gin-gonic/gin"_"github.com/go-sql-driver/mysql"
"log")var Db *sql.DB
func init() {
fmt.Println("系统启动的时候就加载(并不是用户访问的时候加载) 因为连接池 只是用户使用的时候就会建立连接 用完返回")varerr error
Db, err= sql.Open("mysql", "xxx:xx@tcp(1111:3306)/xxxx")if err !=nil {
log.Panicln("err:", err.Error())
}
Db.SetMaxOpenConns(0)
Db.SetMaxIdleConns(0)
}
func main() {
r :=gin.Default()
r.GET("/ping", func(c *gin.Context) {
fmt.Println("Hello, World1!")varerr error
result, e := Db.Exec("insert into xxxx(name, phone) values (?,?);", "姓名", "手机号")if e !=nil {
log.Panicln("user insert error", e.Error())
}
id, err :=result.LastInsertId()if err !=nil {
log.Panicln("user insert id error", err.Error(), id)
}
c.JSON(200, gin.H{"message": "pong1",
})
})
r.GET("/pings", func(c *gin.Context) {
fmt.Println("Hello, World2!")
})
r.Run(":8082") //listen and serve on 0.0.0.0:8080
}
并发1000测试 cpu占用10%
golang 连接池mysql
标签:tab database pen 连接 pac context result golang 使用
本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉
本文系统来源:https://www.cnblogs.com/newmiracle/p/12972312.html