十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这期内容当中小编将会给大家带来有关支持分布式缓存的orm是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
专注于为中小企业提供网站制作、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业中阳免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
给Orm 追加了分布式redis的支持, 目的是为了解决游戏服务器开发时, 数据变更的快速处理。
go get github.com/ablegao/orm
##数据库Model 建立方法
//引用模块 import "github.com/ablegao/orm" //MySQL 驱动 import _ "github.com/go-sql-driver/mysql" //建立连接 // 参数分别为 名称 , 驱动, 连接字符串 // 注:必须包含一个default 连接, 作为默认连接。 orm.NewDatabase("default" , "mysql" , "user:passwd@ip/database?charset=utf8") //建立一个数据模型。 type UserInfo struct { orm.Object Id int64 `field:"id" auto:"true" index:"pk"` Name string `field:"username"` Passwd string `field:"password"` }
更多信息>>
##新增 CacheModel 模型, 支持分布式redis作为数据库缓存。
import "github.com/ablegao/orm" import _ "github.com/go-sql-driver/mysql" type userB struct { CacheModule Uid int64 `field:"Id" index:"pk" cache:"user" ` Alias string `field:"Alias"` Money int64 `field:"money" ` } func main(){ orm.CacheConsistent.Add("127.0.0.1:6379") //添加多个redis服务器 orm.SetCachePrefix("nado") //默认nado . 将作为redis key 的前缀 NewDatabase("default", "mysql", "happy:passwd@tcp(127.0.0.1:3306)/mydatabase?charset=utf8") b := new(userB) b.Uid = 10000 err:=b.Objects(b).One() if err!= nil { panic(err) } fmt.Println(b.Uid ,b.Alias ,b.Money) b.Incrby("Money" , 100) fmt.Println(b.Money) b.Save() //不执行不会保存到数据库 只会修改redis数据。 }
上述就是小编为大家分享的支持分布式缓存的orm是怎样的了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。