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

golang的mongodb操作(mgo)

使用mgo http://godoc.org/labix.org/v2/mgo package main import ( "fmt" "labix.org/v2/mgo" "labix.org/v2/mgo/bson" ) type Person struct { NAME string PHONE string } type Men struct { Persons []Person } const = ( URL = "192.168.2.175:27017" ) func main() { session, err := mgo.Dial(URL) //连接数据库 if err != nil { panic(err) } defer session.Close() session.S...阅读全文

博文 2014-11-04 17:00:03 flyking

游戏服务器框架 Leaf/go

Leaf 是一个使用 Go 语言开发的开源游戏服务器框架,注重运行效率 并追求极致的开发效率。Leaf 适用于几乎所有的游戏类型。其主要的特性: * 良好的使用体验。Leaf 总是尽可能的提供简洁和易用的接口,尽可能的提升开发的效率 * 稳定性。Leaf 总是尽可能的恢复运行过程中的错误,避免崩溃 * 多核支持。Leaf 通过模块机制和 [leaf/go](https://github.com/name5566/leaf/tree/master/go) 尽可能的利用多核资源,同时又尽量避免各种副作用 * 良好的模块支持。 一个 Leaf 开发的游戏服务器由多个模块组成(例如 [LeafServer](https://github.com/name5566/leafserver))...阅读全文

mgo使用指南

mgo使用指南 mgo简介 mgo(音mango)是MongoDB的Go语言驱动,它用基于Go语法的简单API实现了丰富的特性,并经过良好测试。 官方网站:http://labix.org/mgo。 golang.tc(golangtc.com)网站的数据存储就是是用的MongoDB+mgo。近一年使用下来表现良好。 API文档 下面是mgo、mgo/bson、mgo/txn的在线文档。 mgo GoDoc GoWalkermgo/bson GoDoc GoWalkermgo/txn GoDoc GoWalker 安装 安装mgo之前请先安装Golang和MongoDB,安装过程不再赘述。 安装bzr版本工具(mgo使用Bazaar作为版本控制系统,因安装的时候需要去Bazaar拉取代码)。...阅读全文

博文 2015-06-17 20:05:22 yangzhengyi68

golang中使用mongodb的操作类以及如何封装

mgo简介 mongodb官方没有关于go的mongodb的驱动,因此只能使用第三方驱动,mgo就是使用最多的一种。mgo(音mango)是MongoDB的Go语言驱动,它用基于Go语法的简单API实现了丰富的特性,并经过良好测试。 官网:http://labix.org/mgo 文档:http://godoc.org/gopkg.in/mgo.v2 安装与使用 安装 go get gopkg.in/mgo.v2 go中使用 package main import ( "gopkg.in/mgo.v2" "gopkg.in/mgo.v2/bson" ) type Person struct { Id bson.ObjectId `bson:"_id"` Name string `bson:"...阅读全文

博文 2015-07-30 03:00:00 spnt

golang产生guid

labix.org/v2/mgo/bson 包虽然是MongoDB的golang实现,其中产生唯一ID的算法是独立的,不依赖MongoDB, 提炼这部分的代码如下: package main import ( "crypto/md5" "crypto/rand" "encoding/binary" "encoding/hex" "fmt" "io" "os" "sync/atomic" "time" ) // objectIdCounter is atomically incremented when generating a new ObjectId // using NewObjectId() function. It's used as a counter part of an id....阅读全文

博文 2015-01-30 03:00:00 ghj1976

重磅福利:Go语言中文网 携手阿里云赠送超值免费套餐

阿里云30+产品、6个月使用权,有码就能开通。包含7款热门产品:云服务器ECS、数据库(redis、Mongodb)、存储OSS等。 参与本次活动需要满足如下条件: 1. 新用户:指从未体验过阿里云云产品的用户,包括未购买过包年包月产品、未开通过按量付费产品的用户; 2. 通过阿里云个人实名认证; 3. 个人芝麻信用分 ≥ 620; 如果你满足条件,通过本站 [兑换邀请码](/gift)(邀请码有效期至2017年9月1日),就可以免费使用半年!!...阅读全文

Go语言下与MongoDB通信-使用mgo

mgo简介 mgo(音mango)是MongoDB的Go语言驱动,它用基于Go语法的简单API实现了丰富的特性,并经过良好测试。 官方网站:http://labix.org/mgo。 golang.tc(golangtc.com)网站的数据存储就是是用的MongoDB+mgo。近一年使用下来表现良好。 API文档 下面是mgo、mgo/bson、mgo/txn的在线文档。 •mgo GoDoc GoWalker •mgo/bson GoDoc GoWalker •mgo/txn GoDoc GoWalker 安装 安装mgo之前请先安装Golang和MongoDB,安装过程不再赘述。 安装bzr版本工具(mgo使用Bazaar...阅读全文

Mac os安装golang开发环境

为了能够愉快地进行golang编程,我们需要安装以下几样东西: 包管理Homebrew 语言环境golang 版本管理git 虚拟器docker 编译器Goland 我将按照这个顺序叙述整个安装过程 docker 其实是可选的,它可以把应用程序打包为可移植的、自给自足的容器。这样一来,你就可以在本地生成golang程序的docker镜像,直接扔到测试环境,便可以进行测试了,不需要再进行代码上传,环境配置等操作了。 如果你觉得暂时用不到,也可以先不装。 1 安装brew HomeBrew图标 Homebrew有点类似于Linux操作系统中的apt-get(Ubuntu)、yum(yum),Mac的操作系统中使用它解决包依赖问题,套用官方的话来说: Homebrew 能干什么? 使用 Homeb...阅读全文

博文 2018-08-13 18:35:55 夏之绘

golang mongodb mgo 插入,查询例子

golang mongodb mgo 插入,查询的一个小例子,golang还是给我那个感觉,比nodejs写起来舒服. package main import ( "fmt" "launchpad.net/mgo" "launchpad.net/mgo/bson" ) type Mail struct { Id bson.ObjectId "_id" Name string Email string } func main() { // 连接数据库 session, err := mgo.Dial("127.0.0.1") if err != nil { panic(err) } defer session.Close() // 获取数据库,获取集合 c := session.DB("tes...阅读全文

博文 2014-10-05 00:00:01 DarkWingBoy

go -mongodb

1. go 语言安装 安装包:http://pan.baidu.com/s/1kTIcV7hhttp://write.blog.csdn.net/postedit 在windows7 下载go1.4.1.windows-386 版本,解压在本地,直接安装即可 不须设置环境变量; 2.编辑器 Atom 安装 安装包:http://pan.baidu.com/s/1hqvi09u 直接解压安装即可; 3. 运行 操作 4.学习go手册分享:http://pan.baidu.com/s/1dDCj7GH 5. mongodb 安装 安装包:http://pan.baidu.com/s/1i3vMvIl 先 解压,安装 ;1)创建目录文件 如下图 创建文件夹data etc logs 在同目录下新建...阅读全文

博文 2015-04-09 18:00:01 Decadent_2014

数据库不适合Docker及容器化的7大原因

导读:所有的服务都开始了容器化升级,在一切皆容器的主流思想下,无状态的服务采用容器化已经是大势所趋,常常困扰架构师的一个问题是,数据库是否需要容器化,本文作者 Mikhail Chinkov 提出了自己否定观点,由高可用架构翻译。如果我们观察 2017 年技术行业,容器和 Docker 依然将是最热门的流行语。我们开始在每个领域的 Docker 容器中打包开发的软件。从小型初创公司到巨大的微服务平台都在使用容器技术。从 CI 平台到 Raspberry Pi 。从数据库到……数据库?您确定要将数据库放在容器中吗?不幸的是,这不是虚构的场景。我看到许多快速增长的项目将数据持久化到容器中。并且将计算服务和数据服务放在同一台机器上。笔者希望有经验的人不会用这个解决方案。下面是我的观点,数据库容器化...阅读全文

博文 2017-02-15 03:10:00 Mikhail Chinkov

火币网深圳公司招聘Go高级开发工程师

火币集团是全球领先的数字资产金融服务商,创立于2013年,先后获得世界顶级投资机构真格基金、红杉资本的战略投资。 我们拥有5年数字资产金融服务经验,为全球超过130个国家的200万用户提供安全、可信赖的数字资产交易及资产管理服务先后10次刷新全球比特币单日交易额纪录。 截至2017年12月,火币集团累计交易额突破8500亿美元。 目前,我们需要在深圳招募有经验的Go开发工程师(月薪:2-3万,六险一金,丰厚的季度和年底绩效奖金),具体岗位职责如下: 1. 根据需求参与平台项目开发和维护,参与制定前后端业务流程,接口协议,文档输出等; 2. 和产品经理及其他研发团队同时保持良好沟通,对产品需求进行合理化建议,按计划确保开发工作顺利进行 任职要求: 1. 精...阅读全文

[翻译]mongodb日志分析工具mtools之mplotqueries

mtools是一组非常好用的mongodb日志分析工具,里面最复杂的命令是mplotqueries,上网查了一下,还没有人翻译过。英文不好,费了好大的劲翻完,翻的不好,但没有办法,我英文水平就这么多~ 原文地址:https://github.com/rueckstiess/mtools/wiki/mplotqueries ----------------------------------------------------------------------------------------------------------------------- mplotqueries Thomas Rueckstiess edited this page on 9 Oct · 31 revis...阅读全文

博文 2014-11-27 17:00:01 吕明明

总结:优缺点及使用场景

好处和不足 好处: Reactive 是异步非阻塞编程 能实现通过较少的线程处理并发,大大提升程序性能。 Reactive 解决传统编程模型遇到的困境 对于阻塞,可以通过 Callbacks和Futures解决 ;但Callbacks会产生回调地狱问题(callback hell);Futures 相对于 Callbacks 好一点,不过还是无法组合,不过 CompletableFuture 能够提升这方面的不足 不足: 没有异步的JDBC api Java先前大多提供的是同步阻塞库或规范,没有golang类似的官方支持的协程。不过这些都在改善提高中,例如openJDK中的Loom项目就计划实现协程功能,而阿里巴巴的Wisp协程技术已经在阿里生产环境中使用,这两个(Loom和Wisp)未来可...阅读全文

博文 2018-10-15 12:34:41 lesline

Golang+Mongodb

Golang+Mongodb打造你的第一个站点 很多人推荐MEAN来开发站点。MEAN就是M:mongodb,E:expressjs、A:angular最后的N:nodejs。 但是如果你亲身的体会到了js的嵌套回调的话你就会想换换别的办法了。虽然说可以用promise等框架 破解深深的嵌套,但毕竟不是语言本身支持的。 为什么说用Golang呢?因为Golang是一个有着动态语言的特点的静态语言。语法简单,语法糖就是尽量减少语法。 编译的时候就可以把错误排查掉很多。不用像动态语言那样运行的时候才掉进坑里。 在Golang众多的Web框架中发现了Martini。 他后来觉得这个框架用了太多反射影响了效率,就有写了另一个框架或者按照作者的说法“中间件”, 叫做Negroni。具体的开发原因看这里...阅读全文

博文 2015-11-16 03:00:01 Leo_wl

招聘Golang开发工程师一枚

1. 至少一年golang的开发经验。 2. 至少两年互联网产品开发经验。 3. 熟练使用Linux/Mac开发环境,熟悉基于Git的团队合作开发模式。 4. 熟悉postgresql、mongodb和redis。 5. 统招本科以上学历。 加分项: 1. 有自己的开源项目或者作为核心成员参与过其他开源项目的开发 2. 熟悉php,python,nodejs等其他开发语言 3. 对产品设计和交互有一定的研究 4. fullstack潜质 欢迎各位将简历投递到hr@monokeros.c...阅读全文

golang中struct关于反射tag

package main import ( "fmt" "reflect" ) type User struct { name string `json:name-field` age int } func main() { user := &User{"John Doe The Fourth", 20} field, ok := reflect.TypeOf(user).Elem().FieldByName("name") if !ok { panic("Field not found") } fmt.Println(getStructTag(field)) } func getStructTag(f reflect.StructField) string { return string(...阅读全文

博文 2015-06-17 20:03:06 paladinosment

400余份阿里珍贵技术资料限时免费下载(持续更新中)

400余份阿里珍贵技术资料限时免费下载(持续更新中) 2017年,你是否有一个小目标,打算在新的一年事业更上一层楼、代码写的更优美、对互联网生态拥有更多宏观的战略性了解? 小编精心挑选2016云栖大会、历届在线技术峰会、云栖技术直播核心资料,只把最好的呈现给你!因为资料集合过于庞大,所以分批放出,随时关注社区,可以看到全套400余份资料合集哦! 大数据、人工智能、云计算、互联网通用技术……全球技术热点一网打尽,资深专家亲授核心技术。 满足你对各类热点技术的学习需求,下载下来存起来,足够看一年的了! 版权公告:资料版权归属为云栖社区,转载请注明出处。未经允许,不可商用。如发现违规违法使用,保留追究法律责任的权利。 资料获取攻略:使用阿里云账号或淘宝账号登录后,点击...阅读全文

golang学习之mgo操作mongodb

mgo是mongodb的golang驱动,测试代码: // mgotest project main.go package main import ( "fmt" "time" "gopkg.in/mgo.v2" "gopkg.in/mgo.v2/bson" ) type User struct { Id bson.ObjectId `bson:"_id"` Username string `bson:"name"` Pass string `bson:"pass"` Regtime int64 `bson:"regtime"` Interests []string `bson:"interests"` } const URL String = "127.0.0.1:27017" var c...阅读全文

博文 2016-07-10 14:00:02 caiya928

golang基础学习-MongoDB使用

1.系统环境 Golang:go version go1.10.3 darwin/amd64 OS:MacOS MongoBD: version: 3.4.4 2.Golang使用MongoDB 使用:gopkg.in/mgo.v2 获取包:go get gopkg.in/mgo.v2 引入:import "gopkg.in/mgo.v2" mgo简介 3.简单使用MongoDB 3.1 数据设计 3.1.1 数据库设计: 数据库名:mydb_tutorial 集合名: t_student 数据集合:t_student字段说明 字段 类型 说明 name string 姓名 age int 年龄 sid string 学号 status int 状态:1正常,9,删除 3.1.2结构体设计:...阅读全文

博文 2018-09-10 18:34:40 Mr雨易

PostgreSQL与MongoDB竞争激烈 为事务我也选择了Postgre

欢迎大家一起讨论: MongoDB 不支持事务 也许需不需要数据库事务成了是否选择 MongoDB 的决定性因素,MongoDB 不支持数据库事务。 有很多应用对数据一致性其实要求不高,例如很多社交应用,大多数应用逻辑只是简单存取(发一段文字,上传一张照片),极少的不一致是不影响应用的。 而一些严肃应用,例如交易系统,就很需要数据库事务的支持了,否则就需要在应用层自己实现一个粗糙的、充满 Bug 的事务支持。如果有兴趣自己实现事务操作,可以看 MongoDB 的文章 Perform Two Phase Commits。 如果有跨系统的事务操作,就不能完全依赖数据库事务,还要有应用层的重试或回滚操作(例如远程调用支付接口)。数据库层面支持事务的话,起码...阅读全文

周末在家练手用go写的一个笑话爬虫,发出来大家笑笑,不知道算不算广告,如果算的话麻烦站长删除

忙活了2天,不知道算不算广告,如果算的话麻烦站长删除。[点我访问][1] 周末在家练手用go写的一个笑话爬虫,主要是为孩子妈在家带孩子解闷,所以手机上看也的话,界面也还凑合。 主要使用了技术: golang mongodb mgo bootstrap beego 自己实现了一套简单的spider,包含调度器,蜘蛛,过滤器,存储器,使用了开源的goquery,以及mgo(用于连接mongodb),WEB展现为beego。 [1]: http://meijia0.co...阅读全文

Go语言开发-关于LiteIDE使用第三库时没有自动提示的解决方法

今天是写Go语言程序的第二天,所以遇到的问题比较多,到网上下载了一个go语言操作mongodb的第三库,在LiteIDE环境下开发,我工程的目录结构如下 GoWorkplac +src +labix.org //操作mongodb的第三方开源库 +v2 +mgo +bson +db //这是我写的程序目录 +mongo operatordb.go 然后在operatordb.go源程序中使用labix.org库 import ( "labix.org/v2/mgo" "labix.org/v2/mgo/bson" ) 在使用mgo.Dial()时,发现LiteIDE不能自动提示Dial()这个函数,但这并不影响程序的运行,只是IDE不会自动提示 为了让IDE自动提示,解决方法如下: 在你源程...阅读全文

博文 2014-10-16 13:00:01 newsyoung1

Go实战--golang中使用redis(redigo和go-redis/redis)

go get github.com/alphazero/Go-Redis go get github.com/simonz05/godis go get github.com/garyburd/redigo go get github.com/gosexy/redis go get cgl.tideland.biz/redis 目前这五种 开源库redigo的使用 github地址: https://github.com/garyburd/redigo 文档地址: http://godoc.org/github.com/garyburd/redigo/redis 获取: go get github.com/garyburd/redigo/redis 连接redis package main ...阅读全文

博文 2017-11-28 07:03:11 mickelfeng

谈谈一些关于mgo的用法

前言 最近在项目中使用mongodb进行简单的数据分析,在使用mongodb驱动mgo时遇到一些问题,比如在mongodb中执行命令成功,到了mgo中就执行失败。在这里谈一谈实践过程中遇到的问题,基础的用法不再说明了,可以自行百度。 使用 查找(Find) 这个估计是mongodb里用的最多的了吧,mgo中使用Find(query interface{}),query参数一般传入[]bson.M。下面给个例子: m := bson.M{ "CurTimestamp": bson.M{ "$gte": start, "$lte": end, }, "Account": account, "ToNodeType": "cloud", } session.DB("db").C("collect")...阅读全文

博文 2017-05-10 16:00:51 pinecone

postgresql 插入速度大幅落后于 mongodb

近期看了篇文章,说是postgresql也支持nosql,定义了专属的jsonb数据类型,而且速度比mongodb还快,今天验证了下,同样的数据,postgre的插入速度只是mongo 的三分一不到。有可能是各自的驱动造成的。 ```go 数据结构: type StockDay struct { Date int32 O, H, L, C, V, A float32 } mongo 用了mgo 包,插入代码如下: func ReadHq(conn net.Conn, c *mgo.Collection, Code string) { var buf [28]byte var x Stock var y Kline_D...阅读全文

mongodb 有官方支持的 go 语言驱动了

**链接** [https://github.com/mongodb/mongo-go-driver](https://github.com/mongodb/mongo-go-driver) 目前版本号0.0.4,应该还有不少开发工作,不过最近commit挺频繁的。 刚刚试了一下,常用接口都有了 ```go /* db.go */ package db import ( "context" "github.com/mongodb/mongo-go-driver/mongo" "log" ) type collectionMap struct { Account *mongo.Collection } var DB *mongo.Da...阅读全文

安装golang的mongodb驱动mgo速记

这里介绍的方法只适用于Centos平台,测试版本为centos 6.5 下载源码安装实在麻烦,这里采用比较简单的方法给GO安装mongodb驱动 安装mgo之前,需要先安装bzr yum -y install bzr 安装完成后,执行如下命令: go get labix.org/v2/mgo 成功后什么内容也不显示,没有出错提示,表示安装成功。 详细使用教程:http://labix.org/mg...阅读全文

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

Mongo Tools 在 2.7.7 版完全用 Go 重写了

Mongo 2.7.x 还不是稳定版本,在这个版本中,tools 工具采用 Go 重写了。 主要工具有: - **bsondump** display BSON files in a human-readable format - **mongoimport** Convert data from JSON or CSV and insert them into a collection - **mongoexport** Write an existing collection to CSV or JSON format - **mongodump/mongorestore** Dump MongoDB backups to disk in .BSON format, o...阅读全文

golang 使用mgo 连接MongoDB

github: https://github.com/ZhangzheBJUT/blog/blob/master/mgo.md 注:现在MongoDB官方还没有推出关于官方支持的golang的driver,推荐使用的是mgo, mgo的详细文档说明:http://godoc.org/labix.org/v2/mgo 下面是开发中自己写的一个用mgo连接MongoDB数据库的使用实例。 package main import ( "fmt" "labix.org/v2/mgo" "labix.org/v2/mgo/bson" ) type Person struct { NAME string PHONE string } type Men struct { Persons []Person ...阅读全文

博文 2014-10-04 19:26:08 Crazy__Programmer

[译]MongoDB 3.0发布说明

文来自:http://docs.mongodb.org/manual/release-notes/3.0/ 2015年3月3日 MongoDB 3.0现已可供使用。关键新特性包括支持WiredTiger存储引擎,插件化存储引擎API,SCRAM-SHA-1身份验证机制,以及改进的explain功能。 MongoDB运维管理器(MongoDB Ops Manager),包括自动化,备份,监控现在可供使用。查看运维管理器和运维管理器发布说明以获取更多内容。 小版本发布 3.0.1 - 2015年3月17日 修复了WiredTiger中插入和检查点竞争条件导致的记录丢失问题:SERVER-17506 解决了WiredTiger定容集合实现不当导致的服务器崩溃问题:SERVER-17345 解决初始...阅读全文

博文 2015-04-10 03:00:02 yaoxing

MGO 设计调优。

MGO 设计调优。 真的是那句话,不是你不行,知识你不了解。而已。 肯定是不能加两个索引了。 索引的代价实在是太大了,不但占用内存还还大量损失查询性能,真心不能忍耐啊。 设计的时候DBRef肯定是需要的,直接用有意义的ID查询肯定是性能最好的。 控制key的数量肯定是必须的。比如说用户数量就是key的数量这就够了。别整那么多。collection不然损失性能。 如果真的想控制数量的话,那么数据关联肯定是十分必须的。 流量控制肯定也是必须的。 流量的来源在于Find直接返回所有查询结果。卧槽。直接吃掉所有流量。 直接用FindOne 避免查询多个结果回来肯定是必须的 FindOne就够了吗?我确实遇到这个坑了。在博文中已经提到关于这种情况适用filter的方法了。直接参考就OK了。 1Find...阅读全文

博文 2015-03-07 21:33:30 jianyingLi

[上海] 比特币公司 BTCC 矿池项目寻找 Golang 工程师

关于我们: BTCC最初以“比特币中国”的名字创立于2011年。是中国第一个比特币交易所,也是目前全世界运营历史最长的比特币交易所。如今,BTCC引领着比特币生态圈的各个方面,提供数字货币交易所,矿池,支付网关,用户钱包和区块链刻字等服务。BTCC在一个综合平台提供不同的产品和服务,方便全球用户能全方面地参与数字货币领域的所有环节。 总部位于中国上海的BTCC,致力于服务全球客户群,并在安全性、减轻风险、声誉、技术创新方面领导整个行业。BTCC的使命是为全世界提供最可靠、最便捷的数字货币服务。 BTCC领导层是一支多元化的团队,由具有全球顶尖互联网、电子商务和支付系统公司工作经历的业内专业人士组成。CEO李启元 (Bobby Lee)出生于科特迪瓦,毕业于斯坦福大学;在2013年...阅读全文

GoLang structTag说明

在处理json格式字符串的时候,经常会看到声明struct结构的时候,属性的右侧还有小米点括起来的内容。形如 type User struct { UserId int `json:"user_id" bson:"user_id"` UserName string `json:"user_name" bson:"user_name"` } struct成员变量标签(Tag)说明 要比较详细的了解这个,要先了解一下golang的基础,在golang中,命名都是推荐都是用驼峰方式,并且在首字母大小写有特殊的语法含义:包外无法引用。但是由经常需要和其它的系统进行数据交互,例如转成json格式,存储到mongodb啊等等。这个时候如果用属性名来作为键值可能不一定会符合项目要求。 所以呢就多了小米点的...阅读全文

博文 2017-12-18 23:00:01 faunjoe88

mongodb官方的golang驱动基础使用

导入 go get github.com/mongodb/mongo-go-driver/mongo 链接mongo服务 if client, err = mongo.Connect(getContext(), url); err != nil { checkErr(err) } 判断服务是否可用 if err = client.Ping(getContext(), readpref.Primary()); err != nil { checkErr(err) } 选择数据库和集合 collection = client.Database("testing_base").Collection("howie") 删除这个集合 collection.Drop(getContext()) 插入一条...阅读全文

博文 2018-12-11 17:34:49 howie_鲸落

[转] [广而告之] 用 Go 写的类似 ruby-china 的社区, 欢迎光临, 呵呵!

原文: http://ruby-china.org/topics/14345 链接: http://occnet.net/ 很喜欢 ruby-china 这样的社区, 在 3 个月前, 我花了差不多 3 个月的空闲时间把 ruby-china 从 mongodb 移植到 postgresql, 当然也把代码改得一塌糊涂, 我觉得一个人继续维护有点困难, 跟不上 ruby-china 的发展. 所以开始折腾 Golang, 国内学习 Golang 的资料出奇的多, 怎么回事? 收 Google 钱了? 开个玩笑. 也从这两个社区学到不少东西: http://studygolang.com/ http://golangtc.com 所以开始模仿 ru...阅读全文

用mgo开发时,每个session是如何共享的

其实不一定用MGO了, 其他mongodb也是一样, session,_=mgo.Dial("server1.example.com,server2.example.com") 这个session是整个应用共享呢? 还是单个request共享? 还是只是某个函数共享? 我个人的倾向是每个request共享的, 但是每个创建出来的session要用defer去close, 代码写起来比较难看, 而且看论坛上(https://groups.google.com/forum/?fromgroups=#!topic/mgo-users/s1juysWHO8w) 作者是建议整个应用共享一个Session...阅读全文

Golang 下的微服务 - 第 8 部分 - Kubernetes 和 容器引擎

[上一篇博文](https://studygolang.com/articles/12799) 我们看了看用 [Terraform](https://terraform.io/) 创建容器引擎集群。在本篇博文里,我们看看使用容器引擎和 [Kubernetes](https://kubernetes.io/) 部署容器到集群里。 ## Kubernetes 首先,什么是 [Kubernetes](https://kubernetes.io/) ? [Kubernetes](https://kubernetes.io/) 是一个开源的、管理容器的框架。与平台无关,就是说着你可以在你本机上,在 AWS 或者 Google Cloud,任何其他的平台运行它。(Kubernetes)能让你通过使用声明...阅读全文

博文 2018-04-19 11:13:19 ArisAries

腾讯云服务器快速搭建MongoDB数据库

MongoDB是一个基于分布式文件存储的数据库,是一种非关系型数据库,用C++编写而成,下面是如何利用腾讯云服务器搭建mongoDB过程。 下面是搭建过程: 一、设置mongoDB目录 mkdir/data/db 创建mongoDB数据库存放目录 mkdir/data/log 创建mongoDB日志存放目录 二、上传mongoDB安装包到/data目录 这里分享一个mongoDB 2.4.12 ,如果需要安装其他版本可以自行到官网下载 下载地址:http://pan.baidu.com/s/1o81urou yum installlrzsz –y rz上传到/data目录下 ![1.png](http://studygolang.q...阅读全文

Go操作mysql Memcache Mongodb

date: 2014-12-12 操作mysql操作mongodb操作memcache 发现go提供的操作msyql、memcache、mongodb的文档没有lua-ngx的好读,即实例不是很明确,此文列出自己操作时的实例,可让快速入手,但是优化以及错误处理等还有很多工作。 操作mysql go-sql-driver/mysql Example 上提供了用go操作mysql的两个例子。例子中关于查询,一个是一次只取一个结果,一个是一次去多个结果,而且使用了prepare的方法,防止sql注入攻击。 此文中是参考上面例子,做的测试。 只取一个数据的例子 import ( "database/sql" _ "github.com/go-sql-driver/mysql") func main(...阅读全文

博文 2015-07-17 11:00:00 u011321908

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

通用的日志收集工具Logkit

logkit是七牛Pandora开发的一个通用的日志收集工具,可以将不同数据源的数据方便的发送到Pandora进行数据分析,除了基本的数据发送功能,logkit还有容错、并发、监控、删除等功能。 logkit详细的文档可以参见[WIKI](https://github.com/qiniu/logkit/wiki)页面。 **支持的数据源** 文件(包括csv格式的文件,kafka-rest日志文件,nginx日志文件等,并支持以[grok](https://www.elastic.co/blog/do-you-grok-grok)的方式解析日志) MySQL Microsoft SQL Server(MS SQL) Elasticsearch MongoDB Kafka R...阅读全文

开源项目 2017-11-21 03:00:36 网友

MySQL Binlog增量实时同步工具go-mysql-transfer

# 简介 go-mysql-transfer是使用Go语言实现的MySQL数据库实时增量同步工具。能够实时监听MySQL二进制日志(binlog)的变动,将变更内容形成指定格式的消息,发送到接收端。在数据库和接收端之间形成一个高性能、低延迟的增量数据(Binlog)同步管道。 # 特性 1、不依赖其它组件,一键部署 2、集成多种接收端,如:Redis、MongoDB、Elasticsearch、RabbitMQ、Kafka、RocketMQ,不需要再编写客户端,开箱即用 3、内置丰富的数据解析、消息生成规则;支持Lua脚本扩展,以处理更复杂的数据逻辑 4、集成Prometheus客户端,支持监控告警 5、支持高可用集群部署 6、数据同步失败...阅读全文

开源项目 2020-09-05 21:42:27

MongoDB 存储过程的使用以及性能调优方案

MongoDB 存储过程的使用以及性能调优方案。 AUTH:PHILO 在2012年的一个blog里面看到了一个关于性能问题 虽然MongoDB给了我们很多驱动可以用,但是都没有mongodb的shell来的方便。就比如说最近需要做的DBRef嵌套类型的数据要做CRUD如果使用mog驱动的话会非常麻烦。因此我们这里来做个试验,首先给test数据库添加初始化数据添加Server-side script以及测试 mongo 添加数据 1234567891011121314151617181920db.people.insert({"_id":"test","phone","233333"}) //输入原始数据// 数据库修改函数// update之后返回修改后的数据。peopleUpdate=f...阅读全文

博文 2015-03-07 21:34:23 jianyingLi

[坐标深圳] 时代复兴寻找后端工程师

关于公司 北京时代复兴投资管理有限公司是业内领先的全资产组合管理机构,是经中国证券基金业协会认可并备案的私募管理机构(登记号 P1016372 )。我们致力于为客户提供有效的全资产组合管理方案。 在股票、债券、商品、外汇、另类投资、量化及程序化交易领域拥有核心竞争力。 关于入职部门 这次招聘的部门是交易执行部,负责统一交易后端( RestTrader )的开发和维护, RestTrader 是时代复兴整个交易系统的核心,通过支持全市场各个资产大类的交易柜台,为策略平台提供稳定、高效、快速的服务。 关于前景、团队、文化 决定跳槽或者选择一家企业的核心点主要有三个:前景、团队成员的靠谱程度、文化。 前景:我们的资产管理规模在 3 年内会超过 50 亿,量化对冲...阅读全文

golang读取文件信息插入mongodb

这几日,在项目中顺手做了一个功能,读取手机归属地信息,然后插入mongodb 手机归属地格式 号码 省份 城市 卡型 区号 130001 江苏 常州 江苏联通 0519 代码如下 package main import ( "encoding/csv" "encoding/json" "fmt" "io" "labix.org/v2/mgo" "os" "runtime" ) /* 初始化配置 */ func init() { file, _ := os.Open("config.json") buf := make([]byte, 2048) n, _ := file.Read(buf) fmt.Println(string(buf)) err := json.Unmarshal(buf[...阅读全文

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