gossdb ssdb的go驱动开源项目

我要开发同款
匿名用户2015年11月17日
128阅读
所属分类Google Go、数据库相关、数据库驱动程序
授权协议GPL

作品详情

gossdb是ssdb的go驱动

继承官方连接方式。已支持超过99%的官方命令。

支持连接池。

已支持set相关方法

已支持hashmap相关方法

已支持queue相关方法

已支持返回值类型转换,可以方便的把从ssdb中取到的内容转化为指定类型。

连接池已支持如下参数

GetClientTimeoutint获取连接超时时间,单位为秒,默认为5

MaxPoolSizeint最大连接池个数,默认为20

MinPoolSizeint最小连接池数,默认为5

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

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

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

HealthSecondint健康检查时间隔,单位为秒。默认值: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)//取出数据,并指定类型为 intre, err = c.Get("test1")if err != nil {    log.Println(err)} else {    log.Println(re.Int(), "is get")}

 

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论