微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

gossdb ssdb的go驱动

程序名称:gossdb

授权协议: GPL

操作系统: 跨平台

开发语言: Google Go

gossdb 介绍

gossdb 是 ssdb 的 go 驱动

连接池已支持如下参数

  • GetClientTimeout int 获取连接超时时间,单位为秒,认为 5

  • MaxPoolSize int 最大连接池个数,认为 20

  • MinPoolSize int 最小连接池数,认为 5

  • AcquireIncrement int 当连接池中的连接耗尽的时候一次同时获取的连接数。认值: 5

  • MaxIdleTime int 最大空闲时间,指定秒内未使用则连接被丢弃。若为0则永不丢弃。认值: 0

  • MaxWaitSize int 最大等待数目,当连接池满后,新建连接将排除等待池中连接释放,本值限制最大等待的数量认值: 1000

  • HealthSecond int 健康检查时间隔,单位为秒。认值: 300。通过ping方法维护连接的可用性,并定期回收长期不用的连接。

示例代码

pool, err := gossdb.NewPool(&gossdb.Config{
    Host:             "127.0.0.1",
    Port:             6380,
    MinPoolSize:      5,
    MaxPoolSize:      50,
    AcquireIncrement: 5,
})
if err != nil {
    log.Fatal(err)
    return
}


c, err := pool.NewClient()
if err != nil {
    log.Println(err.Error())
    return
}
defer c.Close()
c.Set("test","hello world.")
re, err := c.Get("test")
if err != nil {
    log.Println(err)
} else {
    log.Println(re, "is get")
}
//设置10 秒过期
c.Set("test1",1225,10)
//取出数据,并指定类型为 int
re, err = c.Get("test1")
if err != nil {
    log.Println(err)
} else {
    log.Println(re.Int(), "is get")
}

gossdb 官网

https://github.com/seefan/gossdb

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐