From d955ae0824afe140db07f6c879186fd7bb00a24b Mon Sep 17 00:00:00 2001 From: wanganxp Date: Tue, 12 Jan 2021 01:18:13 +0800 Subject: [PATCH] Update faq.md --- docs/uniCloud/faq.md | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/docs/uniCloud/faq.md b/docs/uniCloud/faq.md index 4b34ce0c49..e97f4765e7 100644 --- a/docs/uniCloud/faq.md +++ b/docs/uniCloud/faq.md @@ -89,11 +89,27 @@ websocket的实时特性导致serverless化比较复杂,目前曲线方案有 资源回收策略方面,阿里云是15分钟内没有第二次访问的云函数,就会被回收。腾讯云是半小时。 两家云厂商仍然在优化这个问题。目前如果开发者在意这个问题,给开发者的建议是: -1. 使用clientDB可以减少遇到问题的概率 +1. 使用clientDB可以减少遇到冷启动问题的概率 2. 非高频访问的云函数,合并到高频云函数中。有的开发者使用纯单页方式编写云函数,即在一个云函数中通过路由处理实现了整个应用的所有后台逻辑。参考[插件](https://ext.dcloud.net.cn/search?q=%E8%B7%AF%E7%94%B1&cat1=7&orderBy=UpdatedDate) 3. 非高频访问的云函数,可以通过定时任务持续运行它(注意腾讯云可以使用这个方式完全避开冷启动,而阿里云的定时任务最短周期大于资源回收周期) 4. 向service@dcloud.io发邮件,申请预留资源不销毁 +### uniCloud访问速度感觉不如传统服务器?@slow + +抛开冷启动,只看热启动,也有开发者反应unicloud的数据不如传统服务器。其实原因如下: + +在一台单机上安装php或java,同时安装数据库,访问速度确实快。 + +但在使用云数据库时,即数据库是单独的服务器,和运行代码不在一台服务器上时,本身就会略微造成些延迟。 + +如果每个请求都要拦截,校验权限,尤其是要查库校验权限的话,访问速度又会进一步延迟。 + +clientDB就是这种情况,因为clientDB内部有权限校验系统,某些权限的验证还需要数据库查询。 + +所以虽然clientDB的速度慢一些,但实际上开发者在自己写了路由拦截和权限管理的框架后,速度也下降。 + +clientDB也仍然在优化,减少查库校验权限的频次,优化速度。 + ### 发布H5时还得自己找个服务器部署前端网页,可以不用自己再找服务器吗? uniCloud支持[前端网页托管](https://uniapp.dcloud.io/uniCloud/hosting),并且免费! @@ -208,4 +224,4 @@ exports.main = async function(event){ ### 使用腾讯云报未登录Cloudbase -腾讯云会在本地storage存储一些信息,请不要在应用使用过程中使用clearStorage等接口直接删除storage。 \ No newline at end of file +腾讯云会在本地storage存储一些信息,请不要在应用使用过程中使用clearStorage等接口直接删除storage。 -- GitLab