使用unicloud前端组件和jql语法请求
- 发布:2021-12-23 11:06
- 更新:2022-02-28 15:47
- 阅读:907
产品分类: uniCloud/App
操作步骤:
预期结果:
正常返回数据
正常返回数据
实际结果:
较高的概率返回如图错误
较高的概率返回如图错误
bug描述:
项目的app端(只有安卓和ios平台)使用uni-app,管理后台是用 unicloud admin 搭建的,请求方式都是前端直接查询数据库。经过长达两个多月的使用和观察,前端几乎所有的请求会有较高的概率返回错误,特别是间隔1~2小时,或者第二天早上请求,有极大的概率会返回错误,刷新后正常(正常后持续一段时间请求都没问题),错误信息主要为两种,附件图片是浏览器控制台截图:
第一种情况是返回查询超时,需要根据文档优化查询性能,但查询的表数据(关联2个表)只有不到100条(多的表也只有2000条左右),查询和排序的字段都已经按文档要求添加索引;
第二种情况返回400,但错误信息里返回 request:ok,这种情况除了查询会出现,add()或者update()时也会出现,表现为返回这个错误信息,但是数据add/update是成功的。
怀疑是冷启动问题,但因为是前端直查数据库,且官方文档也没有这方面的说明,也没法像云函数那样在unicloud后台设置超时时间,在慢查询日志没有任何记录。
这期间为了解决这个问题,已经翻遍了官方文档,目前都没有解决,如果还有其他办法,麻烦告知。
w***@163.com (作者) - we
请求响应状态: success
请求入参: {
"args": {
"command": {
"$db": [
{
"$method": "collection",
"$param": [
"guitar-app-versions"
]
},
{
"$method": "orderBy",
"$param": [
"addtime desc"
]
},
{
"$method": "skip",
"$param": [
0
]
},
{
"$method": "limit",
"$param": [
10
]
},
{
"$method": "get",
"$param": [
{
"getCount": true
}
]
}
]
},
"clientInfo": {
"PLATFORM": "h5",
"OS": "mac",
"APPID": "UNI0B069BF",
"LOCALE": "zh-Hans",
"DEVICEID": "1625801283388571645",
"CLIENT_SDK_VERSION": "1.0.14"
},
"uniIdToken": "token内容我手动删掉了"
},
"requestId": "ac1408181640243877469175787"
}
上面是刷了几遍又出来的,对应的控制台内容是图片
3***@qq.com - 自己人
我也遇到了! 我看了社区反馈这个问题的 都是联表查询的多 !我这边的问题也是表现为 早上的查询或者很长一段时间就会报这个错! 解决思路是写给定时器定时执行不知道会不会暂时解决
w***@163.com (作者)
没想到按要求发日志出来看了,就没有下文了,有点失望。这个问题还一直存在,刚刚在社区里看到你们官方的人说unicloud只有腾讯云是稳定可靠的,难道是因为免费版的阿里云只适合用来写写demo玩玩?
2021-12-28 12:09
DCloud_uniCloud_WYQ
回复 w***@163.com: 你上次上传schema或者uni-id是什么时间还记得吗?
2021-12-28 15:02
DCloud_uniCloud_WYQ
回复 w@163.com: 回复 w@163.com: 帖子比较多难免有漏看的情况,建议加一下官方QQ群
2021-12-28 15:04
DCloud_uniCloud_WYQ
回复 w***@163.com: 另外clientDB权限校验也会查一次库,看一下你得权限怎么配置的
2021-12-28 15:06
w***@163.com (作者)
回复 DCloud_uniCloud_WYQ: 上传schema具体时间不记得了,最近一次在一周前,uni-id是基本没动过。read权限除了true,就是 doc.status==0 这种,最复杂也就是 doc.status+ uid 一起。但我的问题描述得很详细,你有可能忘记看了,这个问题我观察了很长时间,出错的关键是一段时间没有请求了,比如早上登录后初次加载列表,有很大的概率会报错,加载成功后,持续一段时间都会没问题。这和冷启动超时很像。
2021-12-28 22:57
DCloud_uniCloud_WYQ
回复 w***@163.com: 我把你的requestId发给阿里那边看看吧,不太好确定原因
2021-12-29 11:13
DCloud_uniCloud_WYQ
回复 w***@163.com: 服务空间id可以私聊发我一下
2021-12-29 11:14
w***@163.com (作者)
回复 DCloud_uniCloud_WYQ: 昨天想发私信空间id,提示让我先去改头像和昵称才能发,去改昵称提示我改不了...这体验也是够糟糕,今天试了还是一样
2021-12-30 11:08
DCloud_uniCloud_WYQ
回复 w***@163.com: 那今天还出现超时问题吗?可以加我QQ 2292434668
2021-12-30 14:52
DCloud_uniCloud_WYQ
回复 w***@163.com: 没法发私信的问题我让同事看下
2021-12-30 14:54
w***@163.com (作者)
回复 DCloud_uniCloud_WYQ: 已经发送qq验证了,现在还没通过,麻烦看一下
2022-01-04 11:02