https://segmentfault.com/a/ package main import ( "gopkg.in/mgo.v2" "log" "reflect" ) func main() { session, err := mgo.Dial("usr:pwd@127.0.0.1:27017/dbname") if err != nil { log.Fatal("无法打开MongoDB!") return } defer session.Close() clt := session.DB("mydb").C("userinfo") type row struct { UserName, Telephone string
Go性能优化技巧4_10
https://segmentfault.com/a/ 延迟调用(defer)确实是一种 “优雅” 机制。可简化代码,并确保即便发生 panic 依然会被执行。如将 panic/recover 比作 try/except,那么 defer 似乎可看做 f
利用mongo的findAndModify原子性操作实现autoincrementID
https://segmentfault.com/a/ 实际情况 默认情况下,mongo使用_id自动生成uniq id,而且在mongo自带的命令里,无法指定一个自增字段。自增字段在多线程时必须是