码迷,mamicode.com
首页 > 数据库 > 详细

golang 连接池mysql

时间:2020-05-27 13:44:14      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:tab   database   pen   连接   pac   context   result   golang   使用   

package main

import (
   "database/sql"
   "fmt"
   "github.com/gin-gonic/gin"
   _ "github.com/go-sql-driver/mysql"
   "log"
)

var Db *sql.DB

func init() {
   fmt.Println("系统启动的时候就加载(并不是用户访问的时候加载) 因为连接池 只是用户使用的时候就会建立连接 用完返回")
   var err 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!")
        var err 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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!