问题标签 [mongo-go]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - Golang mongo-go-driver 在负载测试期间在 collection.InsertOne 上挂起/超时
我正在尝试使用 vegeta 加载测试一个简单的 go/mongo API,但我只是在POST
端点测试期间超时。
Mongo 驱动https://github.com/mongodb/mongo-go-driver
处理程序
帐户.创建
InitDb(在 main.go 中调用)
测试GET
端点按预期工作。唯一的问题是POST
端点
做一个简单jq -ncM '{method: "POST", url: "http://localhost:8080/accounts", body: "Punch!" | @base64, header: {"Content-Type": ["applicati/json"]}}' | vegeta attack -format=json -rate=100 | vegeta encode
的创建随机空文档将产生以下日志:
http服务器:
mongo(来自官方 docker-hub 的“香草”容器)
素食
如果我将-rate
它降到 5 它可以工作,但它仍然在请求之间挂起 1 或 2 秒。从http服务器错误看来,go正在失去与mongo的连接关于如何进一步调试它的任何提示?
mongodb - 在 Mongo-go-driver 中创建一个独特的字段
我对 Go 和 Mongodb 都很陌生,并且正在用 Go 和 Mongo 编写我的第一个 rest-api。我在 Go 中使用mongo-go-driver
并具有以下结构Modal
我不想使用ObjectId
mongo-db 提供的默认字段作为我的主键,而是想将该Hostname
字段作为主键。
如果我将Hostname
字段类型设为primitive.ObjectID
,那么hostname
将是唯一的,但它的值将由 mongodb 随机生成字符串,而不是实际的主机名字符串值。
那么有没有办法我可以做到这一点。
go - 如何 bson.UnmarshalExtJSON 将时间字符串解析为 ISODate
我有原始的json:
我已经定义了结构:
如何实现它bson.UnmarshalExtJSON
?
go - 执行 UnmarshalExtJSON 时读取数组的请求无效
我正在尝试使用UnmarshalExtJSON
from将扩展 JSON 解组为结构go.mongodb.org/mongo-driver/bson
它给了我一个错误:invalid request to read array
如何将这些数据解组到我的结构中?
MVCE:
我正在使用 go 版本 1.12.4 windows/amd64
go - 如果我的密钥都被命名为“密钥”,如何从 BSON 获取 JSON?
我正在尝试从数据库中读取,然后将结果作为 json 返回给用户。
发生的事情是我得到的输出如下:
[{"Key":"foo","Value":"bar"}]
当我想得到:
"{"foo":"bar"}"
我如何获得前者?
示例:(Raw
未显示从数据库读取并转换为字符串)
node.js - mongo-go-driver 在使用 MongoDB Atlas 时因服务器选择超时而失败
去版本:1.12.5
我有这个使用 node.js mongo 驱动程序的代码
哪个工作正常。
使用mongo-go-driver
,我这样做:
但这会引起恐慌:
我没有在容器/docker 中运行它。
mongodb - Mongo-go如何使用arrayFilter在“对象数组中的对象数组”中查找elem
让我们想象一个像这样的 JSON:
例如,我需要使用 mongoDb 和 Golang 驱动程序 Mongo-go 更新第一个人生成就(id 为 1)
问题出在嵌套级别。我可以通过 $ mongoDb 运算符获取一些数组元素,但在这里我需要通过活动范围(生活、运动、学术等)和 _id 成就领域来识别每个用户的成就。所以我需要在其他对象数组中的对象数组中进行搜索。
这就是我所做的(无论如何它都不起作用)
我希望此查询仅更新“id”和“范围”字段指定的一个元素。可能是我错误地使用了 arrayFilters,或者我错误地设置了 FindOneAndUpdate 函数的参数。现在它不会抛出任何错误,也不会更新文档。请帮我
mongodb - 无法使用 mongo go 驱动程序使用 mongodb 事务
我创建了一个 mongodb 副本集。我能够从 mongo shell 运行事务。但是当我尝试使用 mongo-go-driver 执行此操作时,我总是会收到此错误(IllegalOperation) Transaction numbers are only allowed on a replica set member or mongos
。我不确定我哪里出错了。我以此作为参考https://github.com/simagix/mongo-go-examples/blob/master/examples/transaction_test.go
。
我这样创建客户端
我可以连接到单个 mongodb 实例,而不是副本集。这是我要运行的事务
有什么我想念的吗。有没有其他的例子可以参考。感谢您的帮助/建议。
go - mongo-go-driver 中的自定义 UnmarshalBSON
我希望有某种“钩子”,只要我从数据库中获取特定类型的对象,它就会运行。我认为该Unmarshaler
接口非常适合,但是...如何在不自己手动解组每个字段的情况下实现该接口?
我想过做这样的事情:
如果不使用反射 pkg 手动解组字段,我怎么能做到这一点?
go - 如何在本地时区读取日期时间
我在 golang 中使用 github.com/mongodb/mongo-go-driver 驱动程序我的代码结构:
当我插入一个文档时,它是作为 ISODate() 插入的,它看起来像这样:
从代码中,当我收到文件时,他在 UTC 时区读取。我想在本地时区系统中转换日期。有什么办法可以用驱动程序做到这一点