小编给大家分享一下小程序云开发和非云开发的区别。 相信大多数人对此还不是很了解,所以分享这篇文章供大家参考。 希望您读完这篇文章后能有所收获。 ,我们一起来了解一下吧!
小程序云开发和非云开发的区别
1、云开发无需搭建服务器。 小程序云提供免费的基础版。 如果是非云开发,就需要搭建服务器。
2. 可以快速启动云开发项目,无需依赖外部云服务器,进行数据库增删改查、对象存储等。
微信小程序云开发的坑
1、基础CDN流量太少
我最近做的一个项目中,只在开发测试期间,上传/下载了相册原画质并使用(四五天)。 当时我就意识到了事情的严重性,因为这个项目最后上线,每天需要有数百个用户使用。 如果像我测试的那样,CDN流量可能两天就用完了。 一旦CDN流量用完升级配置,每个月至少需要30元。 以这个价格,你可以在外面购买一个好的对象存储服务。
不过还好我比较早发现了这个问题,及时控制了上传图片的质量。 程序自动压缩每张上传的图片,每张图片在1mb左右。 自正式使用以来,已消耗约1mb的CDN流量。 (日均活跃用户在60人左右)
2、云数据库限制较多
我觉得这个坑对我来说是最深的。 云数据库的局限性有两个方面。 第一个方面是小程序获取数据条数的限制。 第二个方面是云数据库读写权限限制。
(1)小程序终端读取限制
小程序直接请求数据库,每次最多读取20条数据
使用云函数请求数据库,然后通过小程序触发云函数小程序云开发快速启动区别,每次最多读取100条数据
如果每次需要请求100条以上的数据,则需要使用skip批量请求,然后合并。 具体操作请参考官方文档或者其他博客。
(2)云数据库读写权限限制
在说这个坑之前先说一下小程序云数据库是非关系型数据库,不能使用外键和内键联合查询。 (断章取义,本文未提及)
云数据库最开放的权限是:所有用户都可以读取,只有创建者可以更改。
也就是说,如果你创建了一条记录,其他人就无法修改或删除它,这就导致了一系列的问题。 这是我的实际项目的一个例子。
例如:有一个多人自习室供用户预订。 用户可以选择每次预订的时间。 过了这个时间后,这个座位就可以被其他人再次预订。
简单的场景下,正常逻辑下,我们数据库的自习室表中这三个主要字段应该足够了,自习室标识(r_id)、自习室过期时间()、是否过期可以预订自习室()。
当用户选择预订自习室时,我只需要判断自习室是否真实即可。 如果为true,则用户可以预订,预订成功后刷新,设置为 。
但对于小程序云开发提供的云数据库来说,最开放的权限是所有用户都可读,只有创建者才能更改。 这就使得上述逻辑变得不可能。 我们需要更复杂的逻辑来实现这个功能。
我当时做的是:用户每次预订自习室就提交一条数据,将每个自习室的所有预订数据按照时间逐一放入堆栈,将最新的预订放在,这样下次有人预约的时候,你只需要对比是否是最上面的一条数据,就可以判断当前自习室是否可以预约。 实现不修改记录的覆盖删除功能。
三、对外开放限制较多
正常的小程序项目一般都会配备后台管理系统,与小程序共享数据库来管理数据。 由于小程序云开发自带的云数据库是在小程序内部,因此从外部访问数据库需要一个稍微复杂的过程:
首先使用官方接口获取调用凭证,然后通过该凭证使用指定接口对数据库进行增、删、改、查操作。 另外,这个过程消耗的资源也算在基础配置里,每天在线请求5万个。
以上就是《小程序云开发和非云开发有什么区别》一文的全部内容,感谢您的阅读! 相信大家都有一定的了解,希望分享的内容对大家有所帮助。 如果您想了解更多知识,欢迎关注易速云行业资讯频道!