Go语言中文网 为您找到相关结果 309

golang xlsx读写

func TestRequest_LoadFromRemote2(t *testing.T) { xlsxfile2, err := xlsx.OpenFile("E:/apihub/1数据核查/信息核查数据.xlsx") if err != nil{ fmt.Println( err) return } for _, sheet := range xlsxfile2.Sheets { for indexr, row := range sheet.Rows { if indexr < 2 { continue } //if indexr >= 3{ // break //} fmt.Print(fmt.Sprint(indexr)+"姓名:",strings.Trim(row.Cells[1...阅读全文

博文 2018-06-21 15:34:38 Feng_Sir

gossdb终于可以全速前进了

用了一周的时间才最终找到了一个会在大并发(并发1000,mbp普通本)下可能会发生的空指针问题,现在经过多次测试,终于可以关闭这个bug了。哈哈,高兴啊。 现在的gossdb已经相对成熟了,而且用的人也越来越多了,希望在这里介绍给大家,如果有人用ssdb,不妨尝试一下,会有惊喜的。 下面简单的介绍一下gossdb https://github.com/seefan/gossdb 功能列表 1. 继承官方连接方式。已支持超过40个官方命令。 2. 支持连接池。 3. 已支持 set 相关方法 4. 已支持 hashmap 相关方法 5. 已支持 queue 相关方法 6. 已支持返回值类型转换,可以方便的把从ssdb中取到的内容转化为指定类型。 连接池已支...阅读全文

购买国内虚拟主机怎样选择机房?需要注意什么?

购买了国内虚拟主机,怎样选择机房,成了大家头疼的事情,毕竟没有好的机房去辅助,再好的虚拟主机也不能很好的发挥。 国内虚拟主机机房的选择主要考虑是速度,安全等,另外举例网站访客的物理位置靠近,举例越短访问速度快而且稳定。 分两方面考虑,地理位置和是否备案 从地理位置上。一般情况下我们建议选择离自己目标用户所在地域最接近的数据中心,这样可以进一步提升用户访问速度。比如:华北用户推荐选北京和青岛地域,华东用户选杭州地域,华南地域用户可选广州和深圳地域。机房越近,你搭建的网站就经常有秒开的刺激。与自己的电脑本地搭建的服务器相近。 从备案与否。无论是华北机房用户,还是其他国内机房,国内机房都需要按照工信部的要求来操作,对网站进行备案,域名有备案号则可直接购买主机使用。如购买的国...阅读全文

Golang redis 操作初体验

安装 我使用的是 https://github.com/go-redis/r... 这个 golang 客户端, 因此安装方式如下: go get gopkg.in/redis.v4 接着在代码中导入此包即可: import "gopkg.in/redis.v4" 基本操作 创建客户端 通过 redis.NewClient 函数即可创建一个 redis 客户端, 这个方法接收一个 redis.Options 对象参数, 通过这个参数, 我们可以配置 redis 相关的属性, 例如 redis 服务器地址, 数据库名, 数据库密码等.下面是一个连接的例子: // 创建 redis 客户端 func createClient() *redis.Client { client := redis.N...阅读全文

博文 2017-02-10 10:27:51 永顺

golang sql连接池

olang的”database/sql”是操作数据库时常用的包,这个包定义了一些sql操作的接口,具体的实现还需要不同数据库的实现,mysql比较优秀的一个驱动是:github.com/go-sql-driver/mysql,在接口、驱动的设计上”database/sql”的实现非常优秀,对于类似设计有很多值得我们借鉴的地方,比如beego框架cache的实现模式就是借鉴了这个包的实现;”database/sql”除了定义接口外还有一个重要的功能:连接池,我们在实现其他网络通信时也可以借鉴其实现。连接池的作用这里就不再多说了,我们先从一个简单的示例看下”database/sql”怎么用:package main import( "fmt" "database/sql" _ "github.c...阅读全文

博文 2018-09-05 18:35:40 wzFreewz

除痛指南 | P2P公司贷前风控福利贴

最近,随着数据宝的壮大和业务多样化 (骄傲脸)宝妹接到了很多case, 宝妹发现了一些相同的烦恼 临近年末,P2P公司生意火爆, 后台提出了各式各样的烦恼或需求 但细心的宝妹还是做了一个针对性的总结; 借此,宝妹还申请到了这次的专场福利, P2P公司-李先生 宝妹,我们在核查客户信息时经常碰到盲点, 被一些假身份、假号码糊弄,求帮助! 您的问题,宝妹已经在后台收到了呢, 对于这位P2P小伙伴的烦恼, 我们为您推荐以下接口 给您一面“照妖镜”助您让假身份无所遁形, 精准辨别借贷身份真实性。 ![1..jpg](http://studygolang.qiniudn.com/161124/f46f67d68ff96fab7cd54524a96379fb...阅读全文

如何在 Go 语言中使用 Redis 连接池-Radix.v2

一、关于连接池 一个数据库服务器只拥有有限的资源,并且如果你没有充分使用这些资源,你可以通过使用更多的连接来提高吞吐量。一旦所有的资源都在使用,那么你就不能通过增加更多的连接来提高吞吐量。事实上,吞吐量在连接负载较大时就开始下降了。通常可以通过限制与可用的资源相匹配的数据库连接的数量来提高延迟和吞吐量。 如果不使用连接池,那么,每次传输数据,我们都需要进行创建连接,收发数据,关闭连接。在并发量不高的场景,基本上不会有什么问题,一旦并发量上去了,那么,一般就会遇到下面几个常见问题: 性能普遍上不去CPU 大量资源被系统消耗网络一旦抖动,会有大量 TIME_WAIT 产生,不得不定期重启服务或定期重启机器服务器工作不稳定,QPS 忽高忽低 要想解决这些问题,我们就要用到连接池了。连接池的思路很简...阅读全文

博文 2016-02-20 15:00:01 scut1135

Go Kit: Go in the Modern Enterprise

文 http://peter.bourgon.org/go-kit/ The modern enterprise 当我们听到 企业(enterprise)这个词的时候,往往会联想到老派,缓慢, 繁文褥节等名词,就比如 IBM HP 甚至红帽这样的公司,他们已经在长达数十年的时间内成为科技行业的领导者。现在,一些如 Google Amazon Twitter,Netflix,Facebook,Spotify,乃至 SoundCloud 这些公司正成为互联网行业的主流,这些现代的企业通常有以下一些特质: 技术导向 专注用户产品和用户体验 成功的,爆炸式的增长 100-1000 数量级的工程师 采用面向服务的架构 (SOA) 最后一点尤其关键。 A service-oriented archite...阅读全文

博文 2015-05-19 10:04:42 c4pt0r

使用go连接mssql

使用go连接mssql还是比较方便,注意连接字符串要加上 encrypt=disable package main import _ "github.com/denisenkom/go-mssqldb" import "database/sql" import "log" import "fmt" import "flag" var debug = flag.Bool("debug", false, "enable debugging") var password = flag.String("password", "", "the database password") var port *int = flag.Int("port", 1433, "the database port") ...阅读全文

博文 2017-09-09 12:56:28 YiYou.Org

go连接mysql产生大量连接

一直是这个问题困扰着哦我,为什么越来越多连接,到爆掉,换作postgresql驱动也是,还是我理解go语言并发有错呢 package main import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" "strconv" "time" ) var xiancheng = 10 var over = make(chan bool) var sem = make(chan int, xiancheng) func checkErr(err error, hh int) { if err != nil { fmt.Printf("er...阅读全文

golang数据库操作之gorm

gorm快速上手 Quick start 数据库连接 1.Sqlite数据库 package main import ( "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/sqlite" ) func main() { //打开数据库连接 var db, _ = gorm.Open("sqlite3", "demo.db") //关闭数据库连接 defer db.Close() } 2.MySQL数据库 数据库连接字符串格式即DSN (Data Source Name)格式为: [username[:password]@][protocol[(address)]]/dbname[?param1=value1&...&par...阅读全文

博文 2020-05-25 03:32:54 写个代码容易么

美团云老板和老板娘去度假,员工任性!5折券再送5天!!!

【活动介绍】值双11来临之际,美团云特别推出云主机,网络,数据库,负载均衡等产品的5折优惠券,以及对象存储3折优惠券。同时还推出“买就返享5折”,“以及分享得返利”等特惠活动,欲知详情,就请戳下方的活动链接吧! 悄悄告诉你~大老板和老板娘去度假了!我们任性的将活动延期5天! 【领券地址】: https://mos.meituan.com/activity1510?site=golang&location=homepage&campaign=20151026sales ![5tian.jpg](http://studygolang.qiniudn.com/151109/b3eeebbde478e6396d00b2c095365dc3.jpg) 【活动时间】10月26日至...阅读全文

Golang老男孩Go语言第一期

微信号:new_video qq号码:2381392963资料来源网络,仅供学习使用,请勿传播。如有侵权,请联系删除。 课程介绍: Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(RobPike)说:我们之所以开发Go,是因为过去10...课程截图...阅读全文

博文 2019-08-20 16:02:57 天天向上学习

使用gorm,发送长sql时出错,driver: bad connection

因为需要减少数据库的查询次数,所以拼装的sql比较长,大概有13K,用这条sql在终端查的时候,是没问题的,项目中就一直报错,错误信息: 刚开始报 [mysql] 2017/12/08 18:35:23 packets.go:36: unexpected EOF 然后接下来的sql就全部报 driver: bad connection (invalid connection) [mysql] 2017/12/08 18:35:23 connection.go:354: invalid connection [mysql] 2017/12/08 18:35:23 connection.go:354: invalid connection 是连接池配置的...阅读全文

vitess源码阅读笔记cache系列之用go实现通用资源池

更新日志: 更新至2012.4.8的vitess代码 新的代码增加了同步用的条件变量,没有空闲资源时的排队不再使用channel来同步(使用其它编程语言的同学可以方便的移植这个代码了),转而使用condition variable。不再使用mu.RLock,统一使用Lock,不再纠结。 整体代码清晰了许多。 为了进一步提高性能和代码复用,vitess还提供了通用的池管理,RoundRobin.go中实现了通用的资源池,方便管理池内资源总数,超时。 先上第一道菜:RoundRobin在整个vitess架构中扮演的什么角色? 个人觉得RoundRobin的重要性在vitess中怎么着也能算个丐帮的几个长老之一吧,作为其它几个pool的核心基础 如cache_pool.go就是RoundRobin...阅读全文

博文 2014-10-04 19:26:26 gongaut

解决go get的问题 - https fetch failed: Get https://golang.org/x/sync

问题 今天使用go get下载安装hugo的时候遇到如下网络连接失败的问题, 原因是部分网络资源在中国无法直接访问。 $ go get -v github.com/gohugoio/hugo github.com/gohugoio/hugo (download) ... github.com/spf13/nitro (download) Fetching https://golang.org/x/sync/errgroup?go-get=1 https fetch failed: Get https://golang.org/x/sync/errgroup?go-get=1: dial tcp 216.239.37.1:443: connectex: A connection attempt...阅读全文

博文 2019-02-06 18:34:43 CasperLiu

如何像阿里一样开启办公“轻”时代?详解阿里云企业办公解决方案

摘要: 通过阿里云的会议无线投屏、云桌面、云AP三大企业级方案,阿里云能够为企业办公提供云时代的新一代解决方案。 三款产品分别应对了在企业应用中常见的几个高频场景:会议,办公桌面,网络连接。为企业提供快捷,高效,安全,稳定的体验。 通过阿里云的会议无线投屏、云桌面、云AP三大企业级方案,阿里云能够为企业办公提供云时代的新一代解决方案。三款产品分别应对了在企业应用中常见的几个高频场景:会议,办公桌面,网络连接。为企业提供快捷,高效,安全,稳定的体验。会议无线投屏通过“超声波+云”技术,将传统的通过有线电缆连接到投影机/电视的演示方案,变成了通过无线技术进行连接,将传统需要花费几分钟时间的插线投屏,变成了仅需数秒的一键投屏,解决了过去企业投屏演示线缆规格多,相互不兼容,可靠性低等痛点。同时...阅读全文

Golang MongoDB 驱动 mgo 的若干问题

mgo 是 MongoDB 的 Golang 驱动。 连接池 我们通过 Dial 函数创建一个新的 session: session, err := mgo.Dial(url) 创建的 session 能够和 MongoDB 集群中的所有服务器通讯。需要注意的是,对于一个集群只需要调用一次 Dial,通过此 Dial 返回的 session 的 New 和 Copy 方法能够创建更多的 session 出来,这些 session 共用底层的连接池(Dial 创建的多个 session 之间使用不同的连接池)。 更为具体的来看下 Strong session(Strong 为一种一致性模式,这里讨论 Strong session 是因为其相对简单,详见下文)。一个 Strong session...阅读全文

博文 2016-11-07 03:00:16 WHACKW

golang-数据库详解

基本概念 Open() – creates a DB Close() - closes the DB Query() - 查询 QueryRow() -查询行 Exec() -执行操作,update,insert,delete Row - A row is not a hash map, but an abstraction of a cursor Next() Scan() 注意:DB并不是指的一个connection 连接到数据库 我们以mysql为例,使用github.com/go-sql-driver/mysql,首先我们需要导入我们需要的包 import ( "database/sql" _ "github.com/go-sql-driver/mysql" ) 注意我们导入gith...阅读全文

博文 2015-11-06 17:00:12 shuanger_

windows下用golang连接mssql

我擦,最近下了几十个G的数据(哈哈,你们懂的),都是mssql格式的,需要处理下。想用golang处理,于是就需要golang连接mssql。 1.安装Microsoft SQL Server Native Client 去官方下载吧,下载地址: http://www.microsoft.com/zh-CN/download/details.aspx?id=35580 2.安装golang的mssql驱动 go get code.google.com/p/odbc 3.写测试代码: package main import ( _ "code.google.com/p/odbc" "database/sql" "fmt" ) func main() { conn, err := sql.Ope...阅读全文

博文 2014-10-04 19:26:11 ijibu

Service Mesh 数据平面代理SOFAMOSN

MOSN 是一款采用 Golang 开发的 Service Mesh 数据平面代理,功能和定位类似 [Envoy](https://www.oschina.net/p/envoy) ,旨在提供分布式,模块化,可观察,智能化的代理能力。MOSN 支持 Envoy 和 [Istio](https://www.oschina.net/p/istio) 的 API ,可以和 Istio 集成。SOFAMesh 中,我们使用 MOSN 替代 Envoy 。 初始版本由蚂蚁金服和阿里大文娱 UC 事业部携手贡献,期待社区一起来参与后续开发,共建一个开源精品项目。 Istio集成 集成 Istio 0.8 版本 Pilot V2 API,可基于全动态资源配置运行(即将升级到Istio 1.0版本和 ...阅读全文

开源项目 2018-08-13 17:30:01 网友

golang Mysql -- Tx

Transaction 事务 事务处理是数据的重要特性。尤其是对于一些支付系统,事务保证性对业务逻辑会有重要影响。golang的mysql驱动也封装好了事务相关的操作。我们已经学习了db的Query和Exec方法处理查询和修改数据库。 tx对象 一般查询使用的是db对象的方法,事务则是使用另外一个对象。sql.Tx对象。使用db的Begin方法可以创建tx对象。tx对象也有数据库交互的Query,Exec和Prepare方法。用法和db的相关用法类似。查询或修改的操作完毕之后,需要调用tx对象的Commit提交或者Rollback方法回滚。 一旦创建了tx对象,事务处理都依赖与tx对象,这个对象会从连接池中取出一个空闲的连接,接下来的sql执行都基于这个连接,直到commit或者rollba...阅读全文

博文 2017-12-14 07:00:02 yxfeng

mysql连接池不能回避的wait timeout问题

感谢我们的木木同学给了我写这篇文章的灵感和机会。起因我们的项目组一直在使用albianj作为开发框架在开发应用。使用至今倒也是没有出现很大的问题,但最近加过监控的接口基本上都会在使用一段时间后,突然之间执行数据库操作变得很慢。虽然会变慢,但持续的时间比较短,一般1分钟左右,然后会自动恢复正常。但是过了一段时间,这个现象又会出现,周而复始。从监控看,发生的时间点并无规律,有的时候一天发生3次,有的也会有4-5次。虽然从规律上并无法去查找,那就只能从别的地方想办法:增加一些详细的日志,从日志上看一下问题所在。详细日志版本刚刚上去,立刻就发生问题了。如下图:看一下左下角的曲线图,突然飙高,然后在1500ms的高位不下来。经过查找日志(PS:sorry。写文章的时候日志已经被自动清除,没法截图了),...阅读全文

博文 2017-09-05 05:41:29 94geek的大嘴

Golang实现通过微信接收告警消息

首先需要注册微信企业公众号,选团队的可以不使用认证 如图进入公众平台 选择设置.里面有CorpID 和 SecretID 这个发送的时候需要用到. 下面就是使用提供的API 开始发送信息了.具体自己可以看开发者中心里面的文档. package main import ( "bufio" "bytes" "encoding/json" "errors" "flag" "io/ioutil" "net/http" "os" ) const ( //发送消息使用导的url sendurl = `https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=` //获取token使用导的url get_token = `https://q...阅读全文

博文 2016-09-12 16:00:02 fyxichen

Golang Thift, 写了一个Client Pool

这是第一版写了一下午了。 解决使用Thrift的时候官方不提供连接池的问题,没有一个Pool 使用很不爽。 这个库可以帮你自动创建连接,保持连接,还可以自定义keepalive的函数。 使用thrift的同学们可以看一下 地址 Github: https://github.com/wangxingge/thrift_clientpool ...阅读全文

golang操作mysql数据库示例代码

使用了github.com/go-sql-driver/mysql驱动。go在database/sql中实现了连接池,所以每次操作数据库,重复打开关闭即可。 1 package main 2 3 import( 4 "database/sql" 5 _ "github.com/go-sql-driver/mysql" 6 "fmt" 7 ) 8 9 type User struct{ 10 Id int 11 UserName string 12 Passwd string 13 Number int 14 } 15 16 func main() { 17 db,err := sql.Open("mysql","root:sban@/test") 18 if err != nil { 19 ...阅读全文

博文 2014-10-04 19:26:12 sban

golang SQLDriverConnect: {IM005} [Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLAllocHandle on SQL_HANDLE_DBC 失败

问题: 2015/12/04 17:03:36 sqldb.go:2166: SQLDriverConnect: {IM005} [Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLAllocHandle on SQL_HANDLE_DBC 失败 环境: go 语言编写 SQL SERVER 数据库 “code.google.com/p/odbc” 数据库操作使用的包 程序刚启动,运行一切正常,但是运行一段时间过后,总是会出现以上报错信息。仔细查看打印的报错信息,初步认为是数据库出现异常信息。 跟踪数据库运行情况,其他的程序连接数据库能连接上,排除数据库问题。但是SQLDriverConnect 提醒明显是提醒连接数据库失败。怀疑是否是因为数据库连接池出现的问题。 查看此应...阅读全文

博文 2015-12-25 14:00:01 xia_xing

golang http连接池失效的几种情况及具体原因分析

首先,连接池失效,问题产生背景是高频agent,agent 会发起大量的http 请求,但是,本想net/http 是支持长连接的,但是,几种情况,都产生了大量的time_wait,这里予以总结。 第一种情况是误用transport ,为了设置代理,为每个请求,都new 了一个transport 。 client := &http.Client{ CheckRedirect: redirectPolicyFunc, Timeout: time.Duration(10)*time.Second,//设置超时 } client.Transport = &http.Transport{ Proxy: http.ProxyURL(proxyUrl), } //设置代理ip 失效的原因,是client...阅读全文

博文 2018-03-31 11:33:05 caucy

数据宝年末用户答谢“惠”~~全场接口2折起!助力您节前再创业绩高峰!

今日向您推荐: 1、黑名单综合验证(个人):姓名和身份证号输出黑名单信息详情,4000万+覆盖数据实时更新,用于网贷咨询、担保,网贷平台分析用户的信用状态,规避风险; 2、在校学籍验证:输入姓名、身份证、院校名称等验证学籍信息,覆盖全高高校大学生,信用和个人能力评估,适用于校园网贷、招聘等支付能力分析及信息核实。 3、个人实名认证:输入姓名及身份证号进行匹配验证,覆盖全国,全行业、全领域适用,尤其是金融网贷、电商行业(淘宝、共享单车、打车、直播平台)等卖家的线上金融交易、个人信息验证。 4、手机号状态查询:手机号输出在网、停机或销号等状态;数据库对接三大运营商,一手数据源,覆盖全国准确率96%以上适用于金融、通讯、社交、航空、物流、旅游等APP、网站注册,软件验证,商...阅读全文

golang ssh 连接交换机

/* switch ssh username cisco password cisco ip domain name hupu crypto key generate rsa ip ssh time-out 30 line vty 0 4 transport input all login local */ package main import ( "fmt" "io" "log" "os" "strings" "sync" ) import ( "golang.org/x/crypto/ssh" ) func main() { config := &ssh.ClientConfig{ User: "cisco", Auth: []ssh.AuthMethod{ ssh.Password(...阅读全文

博文 2016-08-11 10:00:02 CodyGuo

golang 高并发下 tcp 建连数暴涨的原因分析

背景:服务需要高频发出GET请求,然后我们封装的是 golang 的net/http 库, 因为开源的比如req 和gorequsts 都是封装的net/http ,所以我们还是选用原生(req 使用不当也会掉坑里)。我们的场景是多协程从chan 中取任务,并发get 请求,然后设置超时,设置代理,完了。我们知道net/http 是自带了连接池的,能自动回收连接,但是,发现连接暴涨,起了1万个连接。 首先,我们第一版的代码是基于python 的,是没有连接暴涨的问题的,封装的requests,封装如下: def fetch(self, url, body, method, proxies=None, header=None): res = None timeout = 4 self.erro...阅读全文

博文 2018-03-14 23:33:04 caucy

golang 连接 oracle

Connecting Go to Oracle gives a bit more work than other databases. This is because the Oracle drivers not just link to C code, but also depend on specific environment settings. This post was first written with Windows in mind, but I added a section with Linux specific instructions below. This was tested with the following drivers: go-oci8 ora Firs...阅读全文

博文 2018-05-04 17:33:06 易野

分享一个免费好用的移动SDK,可以实现内容库查询和即时通讯

此款移动SDK由Udesk云客服平台开发,目前免费,功能强大 下载地址 http://7u2pry.com2.z0.glb.qiniucdn.com/udesk-sdk-ios-v1.0.zip 使用方法 1. 下载Udesk SDK ,导入SDK包到你的工程。 2. 导入以下框架到你的工程 3. 点击你的工程targets -> Build Settings 搜索 Other Linker Flags 加入 -lxml2 -ObjC 2. 引用Udesk头文件。 #import "Udesk.h" 3. 通过单利调用Udesk函数。 Udesk SDK 包含的组件 1.帮助中心 2.联系我们 3.功能集合 帮助中心 该...阅读全文

golang的连接池例子

github.com/jolestar/go-commons-pool 测试代码 package main import ( "github.com/jolestar/go-commons-pool" "fmt" ) type MyPoolObject struct { Name string } type MyObjectFactory struct { } func (f *MyPoolObject) Print() { fmt.Println(f) } func (f *MyObjectFactory) MakeObject() (*pool.PooledObject, error) { return pool.NewPooledObject(&MyPoolObject{}), nil...阅读全文

博文 2016-03-02 15:00:01 ziyouchutuwenwu

packets.go:32: unexpected EOF & write tcp 192.168.3.90:3306: broken pipe

golang这边实现的连接池只提供了SetMaxOpenConns和SetMaxIdleConns方法进行连接池方面的配置。在使用的过程中有一个问题就是数据库本身对连接有一个超时时间的设置,如果超时时间到了数据库会单方面断掉连接,此时再用连接池内的连接进行访问就会出错。 packets.go:32: unexpected EOF packets.go:118: write tcp 192.168.3.90:3306: broken pipe 上面都是错误都是go-sql-drive本身的输出,有的时候还会出现bad connection的错误。多请求几次后连接池会重新打开新连接这时候就没有问题了。 http://blog.csdn.net/kenkao/article/details/478...阅读全文

博文 2016-08-19 11:00:09 txj236

用golang实现mongodb数据库连接池-基本篇

版本 golang -- 1.12.4 mongodb -- 4.0 go driver -- 1.0.0 简介 mongodb的数据库driver在官方文档里面明确写明所有的数据库连接需要自己建立和释放,而且建议尽量复用已有的建立,那么也就是说driver里面并未实现连接池的功能。在我们实际应用中就需要自己实现这套数据库连接池提升程序和数据库之间的执行效率。 设计思路 用一个数组来存放数据库连接的指针,并记录每一个指针两个状态: a.是否申请了数据库连接 b.这个连接是否已经给系统在使用中。举个例子就比较好理解了: 申请一个用于存放数据连接的数组,一开始空的什么都没有 pool_initial.png 程序需要一个数据库连接,连接池把数组第一个位置建立一个数据库连接,并把这个连接的状态置为...阅读全文

博文 2019-05-14 11:34:53 kmnemon

基于 go 语言的数据库操作工具集Gendry

Gendry是一个用于辅助操作数据库的Go包。基于`go-sql-driver/mysql`,它提供了一系列的方法来为你调用标准库`database/sql`中的方法准备参数。 **Gendery**主要分为3个独立的部分,你可以单独使用任何一个部分: [manager](https://github.com/didi/gendry/blob/master/translation/zhcn/README.md#manager) [builder](https://github.com/didi/gendry/blob/master/translation/zhcn/README.md#builder) [scanner](https://github.com/didi/gendry/...阅读全文

开源项目 2018-04-19 12:30:01 网友

ssh 连接双层验证linux 系统