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

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基础学习-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雨易

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

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

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

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

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

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

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

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 夏之绘

基于Websocket,TCP,KCP的轻量级网络框架,支持protobuf,json消息协议Lucky

# Lucky #### 介绍 它是一个应用于游戏,APP的网络框架,支持protobuf,JSON 消息协议,基于websocket或者socket(TCP,KCP)进行数据传输, 支持对消息包加密解密。 数据包加密方式: AES128,AES192,AES256 以及Byte轻量级混淆加密。 数据包读、写、执行逻辑处理分别在各自goroutine中, 可以对单个连接恶意发包进行限制,不会堵塞底层网络。 使用者只需注册消息和消息对应的回调函数,在回调中处理具体逻辑。例如: ``` Processor.RegisterHandler(code.Hello, &protobuf.Hello{}, logic.Hello) ``` #### 安装教程 ...阅读全文

开源项目 2020-12-14 15:00:11 helloh2o

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...阅读全文

总结:优缺点及使用场景

好处和不足 好处: 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 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

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

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

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

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

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

腾讯云服务器快速搭建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...阅读全文

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

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

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

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

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_鲸落

Python数据爬虫怎么学?python入门教程

现行环境下大数据与人工智能的重要依托还是庞大的数据和分析采集,就如淘宝、京东、百度、腾讯级别的企业能够通过数据可观的用户群体获取需要的数据。而一般企业可能就没有这种通过产品获取数据的能力和条件。因此,利用爬虫,我们可以解决部分数据问题,那么,如何学习Python数据爬虫能? **1. 学习Python基础知识并实现基本的爬虫过程** 一般获取数据的过程都是按照 发送请求-获得页面反馈-解析并且存储数据 这三个流程来实现的。这个过程其实就是模拟了一个人工浏览网页的过程。 Python中爬虫相关的包很多:urllib、requests、bs4、scrapy、pyspider 等,我们可以按照requests 负责连接网站,返回网页,Xpath 用于解析网页,便于抽取数据。 ...阅读全文

招聘Golang开发工程师一枚

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

Python爬虫相关的基础有哪些?Python学习

现行环境下,大数据与人工智能的重要依托还是庞大的数据和分析采集,类似于淘宝 京东 百度 腾讯级别的企业 能够通过数据可观的用户群体获取需要的数据,而一般企业可能就没有这种通过产品获取数据的能力和条件,想从事这方面的工作,需掌握以下知识: 1. 学习Python基础知识并实现基本的爬虫过程 一般获取数据的过程都是按照 发送请求-获得页面反馈-解析并且存储数据 这三个流程来实现的。这个过程其实就是模拟了一个人工浏览网页的过程。 Python中爬虫相关的包很多:urllib、requests、bs4、scrapy、pyspider 等,我们可以按照requests 负责连接网站,返回网页,Xpath 用于解析网页,便于抽取数据。 2.了解非结构化数据的存储 爬虫抓取的数据结构复杂 传统的结构化数据...阅读全文

博文 2019-11-19 16:00:32 zhouzhou2018

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

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

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

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

[翻译]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 吕明明

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

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

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

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

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

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

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...阅读全文

高薪聘 php高级工程师-北京

公司:准上市互联网公司,产品在行业内排名第一,盈利状况佳 工作地点:北京 地铁周边,交通十分便利,办公环境很好 薪水:底薪15~25万,奖金期权另谈 有意者请发送简历至abby.hua@e4u.cn 职位要求: 任职要求: 1、精通PHP,三年以上web开发经验;; 2、较好的算法功底,有高并发同/异步后端服务设计经验; 3、有MongoDB数据库的工作经验; 4、熟悉python脚本语言开发; ...阅读全文

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...阅读全文

mongodb基于golang的官方driver

直接奉上代码: // +build !test package mongo import ( "context" "runtime/debug" "sync" "time" "go.mongodb.org/mongo-driver/bson" "go.mongodb.org/mongo-driver/bson/primitive" "go.mongodb.org/mongo-driver/mongo" "go.mongodb.org/mongo-driver/mongo/options" ) type BaseEntity interface { GetId() string SetId(id string) } type PageFilter struct { SortBy string ...阅读全文

博文 2019-05-15 16:34:54 四颗豆

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

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

golang连接mongodb

golang连接mongodb 需要的包: "labix.org/v2/mgo" "labix.org/v2/mgo/bson" //连接数据库 session, err := mgo.Dial("10.127.2.19:27017")//要连接的服务器和端口 if err != nil { panic(err) } defer session.Close() //获取数据库,获取集合 c := session.DB("chong").C("ServiceException") result := PayException{} err = c.Find(bson.M{"payWay": "3"}).One(&result)//payway为数据库中的字段 if err != nil { pa...阅读全文

博文 2015-06-17 20:03:55 ayuyuyuxuxu

谈谈一些关于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

golang中struct成员变量的标签(Tag)说明和获取方式

在处理json格式字符串的时候,经常会看到声明struct结构的时候,属性的右侧还有小米点括起来的内容。形如: 1 2 3 4 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啊等等。这个时候如果用属性名来...阅读全文

博文 2018-01-16 18:33:05 老汉-憨憨

使用 Golang 构建整洁架构

## 什么是整洁架构? 在《Clean Architecture: A Craftsman’s Guide to Software Structure and Design》一书中,著名作家 Robert “Uncle Bob” Martin 提出了一种具有一些重要特性的体系结构,如框架、数据库和接口的可测试性和独立性。 整洁架构的约束条件是: * 独立的框架。该体系结构并不依赖于某些带有特性的软件库的存在。这允许您使用这些框架作为工具,而不是将您的系统束缚在有限的约束中。 * 可测试的。业务规则可以在没有 UI、数据库、Web 服务器或任何其他外部元素的情况下进行测试。 * 独立的 UI 。UI 可以很容易地更改,而不会改变系统的其他部分。例如,可以用控制台 UI 替换 Web UI,而不...阅读全文

博文 2018-03-09 11:28:42 polaris

安装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

遍历证券软件——通达信日线目录,把所有日线数据发送到mongodb数据库中

想就证券行情做一个金融互联网的项目,后台服务器选择了mongodb。 为解决历史行情问题,编写了一个遍历通达信日线软件目录,把所有日线数据解析上传到monggodb的程序。 大家在使用时注意: 1、先在通达信中补足历史数据 2、把程序中的遍历目录分别修改为通达信软件中的上海和深圳的股票行情的目录 下步计划: 1、解决实时行情的问题。预计下周会有阶段性成果。 2、解决复权、复息的问题。预计下周解决。 3、完善自动转分钟线、日线、周线、月线 4、封装一些基础的程序化交易的函数。 5、编写一些模拟清算系统,用于程序化交易策略的历史数据测试 6、就行情数据展开一个大数据、人工智能判断的研究——希望有兴趣的朋友共同参与 7、利用语意理解的技术让爬虫自动去爬取上市公司新闻与公告...阅读全文

主题 2015-06-22 15:43:35 wangyanlb

mongodb mapreduce分析

目前发现mapreduce的用法有两种: 一:计数以及实现聚合函数统计数据 二:对数据进行分组简化或者构造自己想要的格式 三:根据条件进行数据筛选 现在普遍的用法是第一种,对于第二种用法我们会分析一些格式怎么构造。 环境: 虚拟机:Oracle VM virtualbox 4.0.6 Linux:CentOS 5.6 mongovue(推荐使用,一个可视化的mongodb客户端,下载地址:http://www.mongovue.com/) 效果图 PS:如果主机和虚拟机中的linux可以相互ping通,mongovue却连接不成功,拒绝访问的话很可能是Linux中防火墙的设置问题。可以把防火墙暂时关了或者把mongodb的端口开启,方法如下: 1) 永久性生效,重启后不会复原 开启: chk...阅读全文

博文 2015-06-18 18:07:58 q383965374

[译]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