小程序
小游戏
企业微信
微信支付
扫描小程序码分享
现在开发的小程序在房屋管理软件,用户建立房屋的时候需要添加多个房屋,现在使用for 循环的方法添加
但是100个房间以上时无法进行耗时就超过3s了,一次添加耗时在25-30ms,有没有什么办法可以一次性的添加多条数据
使用异步的方法添加,试验了全部都是异步,1/10同步,其他异步(相当于延时),最后几个异步等方法,在少于大概100条的时候,都是没啥问题的,但是在多于100条的就会出现很多添加失败的情况,完全没法用。只能本地限制房间数量,或者拆分成多个请求。
7 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
db.collection().add({ data:[ objcet1, object2 ] })
可以批量添加,但不知道有没有条数限制
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
可以批量添加数组内的多条记录的
db.collection('text').add({
data:array
}).then(res => {
console.log(res)
})
array是你的多条记录的数组
昨天也遇到了这个问题,在小程序的js里用数据库add方法只有一条一条的加,要一次加入多条,只能走微信的云函数,测试了,可以一次加入多条!测试数据有3000+条,云函数可以一次写入云数据库,云服务器买的最低(6.9元/月)的版本。希望一起学习的人少走弯路。
官方文档data的值是个Object类型,数组也是Object类型,这样执行的结果是object1和objec2会分别添加为两条记录.
谢邀。这个业务场景的逻辑应该这样实现:首先你可以把当前这个云函数的超时时间设置成20s,然后按照你的最大并发数需要计算,比如你的最大并发数是10,那就当前10个添加为异步,然后增加一个计数器的配置项,当计数器达到10的时候,就必须同步阻塞,完成一个异步请求,计数器就减1,按照这样的方式,看一下在20s之内可否完成所有的添加;如果还不行,就必须增加数据库最大连接并发数。按照这样的实现逻辑,你的云服务器成本是最低的。
for里不要用同步,采用异步的话,100条记录是同时一起add的吧?
貌似之前是可以一次性插入多条记录的
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
db.collection().add({ data:[ objcet1, object2 ] })
可以批量添加,但不知道有没有条数限制
可以批量添加数组内的多条记录的
db.collection('text').add({
data:array
}).then(res => {
console.log(res)
})
array是你的多条记录的数组
昨天也遇到了这个问题,在小程序的js里用数据库add方法只有一条一条的加,要一次加入多条,只能走微信的云函数,测试了,可以一次加入多条!测试数据有3000+条,云函数可以一次写入云数据库,云服务器买的最低(6.9元/月)的版本。希望一起学习的人少走弯路。
db.collection().add({ data:[ objcet1, object2 ] })
官方文档data的值是个Object类型,数组也是Object类型,这样执行的结果是object1和objec2会分别添加为两条记录.
谢邀。这个业务场景的逻辑应该这样实现:首先你可以把当前这个云函数的超时时间设置成20s,然后按照你的最大并发数需要计算,比如你的最大并发数是10,那就当前10个添加为异步,然后增加一个计数器的配置项,当计数器达到10的时候,就必须同步阻塞,完成一个异步请求,计数器就减1,按照这样的方式,看一下在20s之内可否完成所有的添加;如果还不行,就必须增加数据库最大连接并发数。按照这样的实现逻辑,你的云服务器成本是最低的。
for里不要用同步,采用异步的话,100条记录是同时一起add的吧?
貌似之前是可以一次性插入多条记录的