云开发数据库在真机上无法并发获取数据
- 当前 Bug 的表现(可附上截图)
我简化了一下我的代码:
我需要查询某个place两周(14天)内的状态,故把14个Promise放进了promises里,然后使用Promise.all来并发执行,(因为之前我的做法是串行执行14个查询,但这样太慢了,每次需要3秒左右)
exports.getStatus = async (placeId) => { const date = new Date() const promises = new Array()
promises.push( db.collection( 'xxx' ).where({ placeId, date: util.formatDateTime(date, 'yyyy-MM-dd' ) }) .get() ) date.setDate(date.getDate() + 1) }
|
console.time( 'get status' ) let statusRes = await getStatus(placeI d) console.timeEnd( 'get status' ) |
* 在开发者工具上,平均用时在300ms左右,可见确实是并发执行的
* 但在真机上,测出来还是需要3秒左右,我猜想它还是在顺序的执行
* 真机环境:
- 预期表现
在任何环境下,都应该是并发执行,所需时间应该在300ms左右
- 复现路径和提供一个最简复现 Demo(应该不需要了吧
在此先行谢过各位大佬!