专栏首页跟颜哥学习云开发TCB系列学习文章——什么是TCB云开发?(一)
原创

TCB系列学习文章——什么是TCB云开发?(一)

云开发出现背景

在传统的开发模式下,我们需要构建一个应用,往往会有以下的情况。

  • 从时间复杂度来讲,构建一个应用的周期是比较长的,服务器的搭建,数据库和后台管理服务,多服务器分布式部署,后台前端开发,再到域名申请和上线。其中的复杂度是特别高的,每个阶段都要有专业的人员去处理。
  • 从资源消耗上来讲,首先是物理资源和文件资源,服务器,数据库,后台,域名。然后是人员消耗,服务器的维护人员,后台管理开发人员,前端开发人员,后期后台维护人员,前端维护人员等等。
  • 从成本上来讲,首先,因为时间复杂度比较高,项目周期比较长,资源消耗又比较大,所以成本会比较的高,小型企业一般难以承受。

于是,大部分中小型企业都会选择去购买一个云服务器,然后在上面去部署自己的数据库,后端服务,前端服务,但是这依旧只是解决了服务器的维护问题。

于是,就有了云开发。

什么是云开发?

云开发(Tencent Cloud Base,TCB)是腾讯云为移动开发者提供的高可用、自动弹性扩缩的后端云服务,包含计算、存储、CDN、静态托管等能力(Serverless 化),可用于开发多种端应用(小程序,公众号,Web 应用,Flutter 客户端等,后续会陆续支持 iOS 和 Android 等移动应用开发),达到一站式后台服务构建多端应用,帮助开发者统一构建和管理后端服务和后端云资源,避免了应用开发过程中参与繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。

这是官网的说法,咱们分几个维度来说。

  • 从时间复杂度上来讲,相比于传统的应用构建,云开发只需要申请云开发服务器,就可以通过官方的SDK和云函数进行各种业务上的开发,和数据存储交互。并且云开发是一种弱化后端的方式,仅需要前端开发就能实现。
  • 从资源消耗上来讲,首先,我们几乎没有了物理资源,文件也是丢在云文件储存里面,而且有官方服务支持,在没有服务器、数据库和后台维护的需求下,前端维护涉及到云相关的也可以请求腾讯支持。
  • 从成本上来讲,时间短,资源消耗和人员消耗少,成本大幅降低。

那云开发究竟是什么呢?

  1. 用一句话来讲,云开发是一个支持小程序、web、安卓等多端的应用服务中心。
  2. 云开发为开发者提供完整的云端流程,简化后端开发和运维概念,无需搭建服务器,使用平台提供的 API 进行核心业务开发,即可实现快速上线和迭代。
云开发结构分析图

云开发有什么内容?

  1. 云函数:无需自建服务器,云端代码,微信天然鉴权,可自行创建和编辑。
  2. 云数据库:无需自建数据库,既可以直接通过下程序前端操作,也可以通过云函数读写的JSON数据库。
  3. 云储存:无需自建储存和CDN,可以直接在前端上传和下载云端文件,云开发控制台可视化管理。
  4. 云调用:可以基于云函数免鉴权使用小程序开放接口,包括服务调用和获取开放数据。
  5. HTTP API:通过API接口,使用者可以在已有的服务器上访问云端资源,实现互通。
  6. 云开发控制台:可以对云函数、云数据库、云储存以及网络状况等进行实时管理和监控。

云开发能做什么?

  1. 消除了前端和服务端的概念,能够为小程序开发者提供完整的云端支持,让不具备一定后端知识的开发者也能高效的开发出一款高质量的小程序
  2. 可以实现多平台互通。
  3. 可以实现产品的快速迭代,提升用户体验。
  4. 因地制宜,开发者在开发工具内编写好代码之后、一键上传部署即可运行发布,快速扩容/缩容。
  5. 能够自动过滤宜些低级安全问题(服务器漏洞、sql注入、代码注入等)
  6. 应用和服务器以及数据库统一管理和监控。

云开发的缺点

  1. 对云数据库的操作,所有的增删改查都需要通过API去执行HTTP接口调用。这对后台管理方面来说不是很有利。
  2. 数据都在云端,数据安全性全依赖于云服务器端。
  3. 数据库在云端,对数据库的备份和数据潜移以及数据库同步等操作比传统方式略显困难。

小结

  1. 云开发可以让开发更简单、开发高效快捷、运维更省事、成本更低。
  2. 云开发可以最快速方便的通过SDK执行数据库操作。
  3. 可以实现前端工程师的全栈式开发的梦想。
  4. 云开发控制台可以很方便的进行全方面的管理。
  5. 未来发展趋势之一,虽然目前也有一些不完善的地方,但是我们有理由相信,云的思维配合低成本全栈及各大优势,云开发的前景一片美好。

ps:接下来,将进行第一个云开发项目的搭建。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • TCB系列学习文章——搭建你的第一个云开发小程序(二)

    ps:此篇文章只是超简单的搭建一个云开发小程序,后续会一一讲解各部分的详细使用方法和使用场景。

    F颜
  • 从零开始创建一个超简单的TRTC音视频通讯程序(小程序篇)

    出于政策和合规的考虑,微信暂未放开所有小程序对实时音视频功能(即 <live-pusher> 和 <live-player> 标签)的支持:

    F颜
  • TCB系列学习文章——云开发的云数据库篇(五)

    云开发提供了一个 NoSQL 数据库,数据库中的每条记录都是一个 JSON 格式的对象。一个数据库可以有多个集合(相当于关系型数据中的表),集合可看做一个 JS...

    F颜
  • 想做 Python Web 开发,需要掌握哪些技能?

    在 Web 开发领域,Java 凭借企业级支持以及世界丰富的生态环境成为绝对霸主,PHP 紧随其后。有些公司考虑效率问题而采用 C++ 做后台开发语言, 也有人...

    猴哥yuri
  • 系统架构都经历了怎样的演变?

    当今技术的发展日新月异,系统架构也跟随技术的发展不断升级和改进,从传统的单一架构演变为如今的微服务分布式架构,我们来看看技术架构的演变过程。

    IT小白龙
  • 设计模式专题(一)——面向对象的设计原则

    设计模式专题(一)——面向对象的设计原则 (原创内容,转载请注明来源,谢谢) 设计模式在程序中,主要服务于设计类、接口等,是以面向对象为基础的,因此面向对象...

    用户1327360
  • git版本控制

    mwangblog
  • JavaScript中的编码函数

    非URI编码 :escape仅对String对象编码,不能用来对统一资源标示码URI进行编码

    meteoric
  • 面向对象系列讲解—认识对象

    HTML5学堂:面向对象、原型、继承应该说是属于JavaScript最底层的知识和概念,对于这些知识,在我们没有触碰的时候的确觉得是比较困难的,包括在学习的过程...

    HTML5学堂
  • 「3306π」沪江:从 SQL Server 到 MySQL (一):异构数据库迁移

    本系列文章就是向大家介绍, 从 SQL Server 迁移到 MySQL 所面临的问题和我们的解决方案。

    [3306 Pai ] 社区

扫码关注云+社区

领取腾讯云代金券