预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

先天下之忧而忧,后天下之乐而乐。——范仲淹 ⼩程序·云服务的系统架构和运维实现 之前,开发者想要开发⼀个⼩程序,常规流程是:要考虑买什么样的服务器,匹配哪些资源(如存储应⽤、数据库等),此外,还要考虑各 种初始化,与服务端⼝关联等问题。这些⼯作全部梳理完成可能要花费数天时间。有了“⼩程序·云服务”以后,开发者不⽤考虑后端复 杂的技术操作,并且开发过程⾮常简单,在⼏分钟之内就能完成后端环境的搭建,也能在1、2天内开发⼀个⼩程序。为进⼀步了解⼩程序 ·云服务适⽤的业务场景、系统架构与架构演进等,InfoQ专访了⽀付宝⼩程序·云服务团队,揭秘⽀付宝⼩程序·云服务如何帮助开发 者快速地开发⼩程序。 ⼩程序·云服务解决的难点和痛点 蚂蚁⾦服拥有海量的实名制优质⽤户,并通过⽀付宝App构建起各种商业和⽣活服务场景,同时⽀付宝体系内也积累了数千万B端商户, 对于商户⽽⾔,如何服务好客户是关键。在这样的背景之下,构建⼀个能帮助商户提升⽤户体验的平台就⾄关重要。⽽⽀付宝⼩程序就提供 了这样⼀个平台。对于⽀付宝⼩程序,开发者最初采⽤传统的研发模式。传统的研发模式只解决了⼩程序前端界⾯的问题。后端服务还是需 要开发者⾃⾏购买服务器、证书、数据库、CDN等基础资源,并且需要进⾏部署和运维。如果需要使⽤⽀付宝的服务(⽐如获取访问⽤户 的信息),还需要对接⽀付宝开放平台,进⾏授权和程序配置。这⼀系列问题导致了开发者还没接触代码,就已经消耗了⼤量的时间和资源 在服务器和配置环节上。 ⼩程序·云服务保障⼩程序后端⽆忧 ⼩程序·云服务是针对⼩程序提供的基于云端的服务,提供云应⽤和Serverless后端云服务两⼤解决⽅案,⽬的是解决⼩程序后端服务 的问题。⼩程序·云服务让开发者不需要关⼼证书、运维、扩容,不需要关⼼被⿊客攻击,只需要专注写好⾃⼰的代码和业务逻辑即可。 云应⽤是⼀个有服务器解决⽅案,利⽤蚂蚁⾦融科技应⽤PaaS平台等基础能⼒,为开发者提供成熟的技术服务,⽐如⼀键构建云端环境 (应⽤、服务器、数据库、域名、HTTPS证书等),IDE中⼀键发布部署,应⽤资源监控等。云应⽤保持原有开发者熟悉的模式,使开发 者快速开发运维云端应⽤。 Serverless后端云服务是⼀个⽆服务器解决⽅案,开发者只要开通服务就能使⽤函数计算、数据库、⽂件CDN等核⼼服务。Serverless 后端云服务因其具备Serverless优势,可以实现弹性提供服务资源,对商户⽽⾔节省了⼤量的硬件资源。开发过程中也⽆需关⼼服务器的 运维、部署和配置,并且天然可以调⽤⽀付宝的服务接⼝,是真正的开箱即⽤服务。 ⼩程序·云服务的架构和技术选型 云应⽤和Serverless后端云服务两种解决⽅案相对应的开发架构并不相同。 云应⽤的框架结构和核⼼能⼒ 云应⽤依托于蚂蚁⾦融科技的应⽤PaaS平台、监控分析平台以及分布式中间件平台,针对⼩程序的场景进⾏封装优化。应⽤PaaS平台提 供完善的环境资源管理、发布部署(灰度发布、蓝绿发布)、弹性伸缩等能⼒。监控分析平台提供物理资源监控预警,应⽤⽇志监控预警等 核⼼能⼒。分布式中间件提供常⽤的分布式中间件,⽐如消息中间件,微服务治理平台等。在IDE和Web控制台端,云应⽤对上述能⼒进 ⾏封装,以最简洁的⽅式提供给⽤户,并同时针对⼩程序场景提供⾃动分配⼆级域名及证书,云服务器内置MySQL数据库、IDE⾃动⽣成 调⽤蚂蚁开放平台开放能⼒(⽀付、信⽤、安全等)的代码等功能。如果⽤户希望更深度地使⽤蚂蚁⾦融科技的能⼒,也可以直接在蚂蚁⾦ 融科技的官⽹中进⾏更加复杂的运维操作如分组发布、灰度发布等。 丹青不知老将至,贫贱于我如浮云。——杜甫 以铜为镜,可以正衣冠;以古为镜,可以知兴替;以人为镜,可以明得失。——《旧唐书·魏征列传》 云应⽤架构图 云应⽤在IDE端提供了丰富的插件能⼒,让开发者在IDE端可以直接和后端云服务进⾏⽆缝交互。这些插件能⼒包括:⼀站式开通蚂蚁⾦ 融科技、⼀站式构建云端测试和⽣产环境、⼀键发布部署应⽤代码、重启、停⽌应⽤、⽇志查看等能⼒。 对于Node.js应⽤类型,这些能⼒直接集成在了蚂蚁⼩程序开发者⼯具当中。对于Java应⽤类型,这些能⼒以插件的形式,集成到开发者 熟悉的IntelliJIDEA中。 除了将云端能⼒集成进IDE当中,云应⽤还提供了Web控制台,供开发运维⼈员在Web页⾯上对应⽤进⾏运维操作。在Web控制台 上,⽤户可以对测试⽣产环境、资源、应⽤进⾏管理,同时提供可视化的监控页⾯,对应⽤资源进⾏监控预警。对于测试⽣产环境的管理, 云应⽤提供了构建、删除测试和⽣产环境。对于服务器,云应⽤提供了重启、修改密码、Webshell等功能。对于应⽤,云应⽤提供了上传 发布包、发布回滚应⽤、查看发布历史