zoukankan      html  css  js  c++  java
  • 从微信小程序到QQ小程序:云开发CloudBase的一云多端实践

    本文整理自《IGS.全球数字文创大会》上腾讯云云开发CloudBase团队,高级产品经理史燕飞的分享,主要介绍云开发CloudBase的多端探索,及对QQ小程序开发者的全栈支持。

    前言

    QQ小程序从2019年6月正式发布之后,依赖于QQ这个国民级应用和独特的设计,迎来了百倍增长。为了更好的方便开发者在QQ生态获得更多的发展和成长,QQ小程序团队与腾讯云云开发团队一起将云开发这款产品带给了QQ小程序开发者,以求帮助开发者快速构建自己的应用,降低开发者的研发成本,为开发者提供一云多端的立体化支持。

    传统研发模式

    一个小程序正常需要经过用户调研、需求分析、业务建模、系统设计、系统实现、系统测试、系统集成、系统运维等环节才能对外提供服务。其中需求分析和业务建模决定了这个应用的目标用户群体和核心卖点,但能不能服务好客户受很多细节性因素决定,如何做好一个应用,也是一个很值得探讨和研究的话题。

    img

    很多事情做完很简单,但做好没那么容易,对于小程序也是如此。

    把一个小程序从60分做到80或90分,所耗费的精力和资源可能要比做到60分还大。比如,对于前端来说需要处理兼容性、处理数据统计上报、运行性能等,对于后端来说需要关注安全、服务可用性、容灾部署、监控告警等等。

    不同的小程序最大的区别在于其目标用户和核心卖点的不同,映射到小程序上就是其业务逻辑不同,但在后端方面除了业务逻辑外需要关注的高可用、高并发、异地容灾、弹性伸缩等处理方式是相同的。是否有一种产品或平台来帮开发者完成这部分工作呢?让开发者只需要关注创新、创建,关注业务逻辑,这些周边的相似特性交给平台来完成。

    img

    云开发模式

    随着技术的发展,软件开发一直在不断地降低研发成本和提升研发效率,2016年9月微信小程序开启内测,进一步拓展了移动应用开发场景!微信、QQ等小程序平台方为开发者提供了良好的前端开发组件及工具支持,方便开发者快速搭建小程序;这个期间,后端技术也在蓬勃发展,特别是无服务器架构技术将软件开发带向了新天地,极大地革新了现有研发模式。

    img

    顺应技术发展趋势,也为了让开发者更好地享受技术红利,腾讯云为开发者提供了一站式的Serverless后端云服务,即云开发CloudBase。经过一段时间的迭代和能力补充,现在已经支持了微信、QQ、Web、Server和APP,受到了50多万客户及开发者的认可,平台日均调用量超7亿。

    img

    img

    与传统的研发模式相比,云开发通过为开发者提供开箱即用的Serverless能力,免去了很多复杂的配置及部署,极大地减少了研发人力投入,也让研发能闭环地完成项目开发,极大地提升了研发效率。

    img

    云开发为开发者提供了哪些核心助力?

    我们上线一个应用并不是终点,仅仅是开始而已,后续的产品运营也很重要,为了方便产品或运营调整产品内容或策略,我们常常会搭建配套的运营系统。要想完成这些系统的构建就需要基础的计算能力、数据库、存储等,在这些基础能力之上再完成业务逻辑、安全策略、多端支持、管理系统等的开发。针对开发过程中经常遇到痛点和难点,云开发都有针对性地优化和支持,下面将做详细介绍。

    img

    计算能力

    计算能力是一个应用的核心部分,承载着业务逻辑。云开发为开发者提供了:云函数(无状态的运行时)和Severless容器(常驻的运行时)两种计算能力,来全方位地满足开发者。除此之外,也提供了日志检索、监控告警等支持,让开发者的研发、调试、部署等操作更为便捷。Severless容器服务****目前在内测中,内测用户可享有三个月的免费用量,欢迎大家联系我们参与内测。

    img

    img

    数据库

    一个完整的应用系统,常常需要存储应用数据,就需要数据库来完成这部分工作。云开发为开发者提供了简单易用地云数据库,同时也在架构设计上进行了优化,可以很大地降低开发者的使用门槛,真正做到“拿来即用”。比如:以往数据库设计中经常遇到的慢查询及索引优化,云数据库也会自动帮助开发者完成,开发者只需要关注普通的业务逻辑即可。

    img

    img

    云存储

    很多小程序都会使用都图像、视频等媒体资源,对此云开发提供了文件存储及CDN支持。开发者使用云存储一半以上都在进行图像的存储,但很多时候在不同的应用场景对同一张图像有不同的要求(如尺寸、图像质量、图像格式、图像水印等),线下手动处理图像耗时久,不能满足业务多样化的需要。本着为大家“更省事地开发应用”出发,云开发也推出一系列丰富的图像处理能力供大家使用。

    img内容管理系统

    云开发的宗旨就是帮助开发者快速搭建应用,不同的应用往往都需要运营系统来进行管理,功能强大的运营系统可以解放研发人力,也能提升产品运营效率。但很多时候,运营系统的搭建是滞后于业务的,也是一个繁琐且低技术含量的事情。为此云开发为开发者提供了CMS系统的搭建部署支持,我们在开发者云开发的资源上为开发者搭建100%属于开发者的CMS,该CMS可管理开发者通过云开发构建的所有应用(应用的数据和文件存储在云开发上,CMS系统就是一个可视化管理云开发中数据和文件的工具,云开发自己的官网目前就是通过该CMS运营和管理的)。

    相比市场上的其他CMS系统,我们仅提供的CMS部署支持,CMS是基于开发者自己的云上资源构建,不收取额外费用,开发者只需为使用到的云资源付费。

    img

    多端支持

    经过云开发团队和社区小伙伴的不断努力,云开发目前已经支持了很多平台,真正实现了一云多端,给开发者提供一致的开发体验。

    img

    安全防护

    为了保障开发者的资源及数据安全,云开发也提供了多维度、立体化地安全策略,如通过安全规则,开发者可以免去自建权限系统的难题,简单几行配置即可完成权限校验。

    img总结

    云开发为开发者提供云端一体化地后端云服务,短短不到两年的时间里在公司内外都有不错的口碑,拿到了2019年腾讯卓越研发奖,获得了50W企业客户和开发者的信赖,其中不乏拼多多、微信读书、和平精英、央行等头部客户。

    我们更开心的是为中小客户提供的便利和支持,极大降低了中小客户上云、用云的成本。如:去年我们曾经举办了一个24小时极限编程比赛,有个开发者带着客户到现场为客户开发系统,在短短地24小时之内完成了绝大部分功能,最后也将获奖礼品送给了自己的客户,多么amazing;在今年的520,也有开发者利用云开发快速完成了一个表白程序的开发及部署,送给女票后,赢得了一片艳羡,在传统研发模式下(买域名、域名备案、购买证书、购买主机、服务部署等等)这是很难实现的,有了云开发,连表白都变得高效了;也有一部分开发者是自由职业者,不想被公司所束缚,想自由地选择自己工作和生活方式,借助云开发他可以独立地完成项目的交付,获得更多的回报,让自己更自由地选择自己喜爱的生活。

    期待云开发未来能给开发者带来更多地便利,这也是我们努力地方向。

    img后记

    QQ是一款国民级的应用,依然具有非常旺盛的生命力,受到很多年轻用户的喜爱。QQ小程序/小游戏 也有非常多独特地平台策略和优势,希望开发者可以在QQ这个平台上获得好地发展和回报。未来云开发团队和QQ小程序团队会推出更多的能力来服务好开发者,让开发者更快的开发小程序。

    云开发CloudBase团队是一个非常open的团队,我们欢迎客户选择和使用云开发,也想听到客户真实的声音,我们会继续打磨和优化产品,不断为开发者提供更好的云服务。

    公众号:腾讯云云开发

    腾讯云云开发:https://cloudbase.net

    云开发控制台:https://console.cloud.tencent.com/tcb?from=12304


    更多精彩
    扫描二维码了解更多

    img

  • 相关阅读:
    java io系列23之 BufferedReader(字符缓冲输入流)
    java io系列22之 FileReader和FileWriter
    java io系列21之 InputStreamReader和OutputStreamWriter
    java io系列20之 PipedReader和PipedWriter
    java io系列19之 CharArrayWriter(字符数组输出流)
    java io系列18之 CharArrayReader(字符数组输入流)
    java io系列17之 System.out.println("hello world")原理
    java io系列16之 PrintStream(打印输出流)详解
    java io系列15之 DataOutputStream(数据输出流)的认知、源码和示例
    java io系列14之 DataInputStream(数据输入流)的认知、源码和示例
  • 原文地址:https://www.cnblogs.com/CloudBase/p/13036014.html
Copyright © 2011-2022 走看看