支付宝小程序:To B 战争中的商业底层实力构建与传统开发痛点解析

2024-11-16
来源:网络整理

前不久,有朋友问我,什么样的小程序比较好?

我只问一个问题,你们的产品涉及金钱和服务吗?如果两者都涉及的话,我建议你选择支付宝小程序。你可以通过其他小程序玩裂变,但如果你要做服务、做商业,就必须考虑支付宝小程序。

小程序To B之战已经打响。从前端来说,是小程序和物联网解决方案的争夺战;从中端看,体现在数据服务的竞争上;而从后端来看,就看哪种云服务基础设施更受用户青睐。

对于后端云服务,支付宝小程序如何打造自己的底层商业实力?

传统小程序开发

VS

小程序云服务

传统小程序后端开发常见的痛点是:后端环境搭建复杂,如服务器、数据库、域名、证书等;搭建好后端后,将应用发布到云端的过程比较漫长,涉及CI/CD、编译打包、多环境等;同时,小程序开放能力的集成复杂,必须考虑签名验证和异步回调。整理所有这些流程需要几天的时间。

为了节省开发者在后端开发上花费过多的精力,支付宝小程序云服务提供了两种解决方案,一种是服务器自主运维的经典云应用,另一种是无服务器托管模式。通过小程序云服务搭建后端,节省了开发者自行搭建后端的人力和物力成本,让开发者可以专注于支付宝小程序的业务落地。

支付宝小程序云应用

拥有独立的服务器运维

小程序云应用是一个以开发者为中心的应用PaaS平台,以简单、便捷、自主可控为目标,针对小程序的场景场景进行了优化。小程序云应用的定位是专注于提供快速建设、稳定运行的小程序后端服务。

小程序云应用提供哪些能力?

(1)便捷性:比如IDE提供插件后,后端开发者可以与云端无缝对接。后端代码可以在IDE中直接发布到云端。这里,小程序云应用提供了云的一键搭建。环境和一键发布的能力。针对支付宝小程序场景,设置了小程序云应用,自动分配测试操作和一些相关证书,让开发者可以直接使用数据库。

(2)灵活性:开发者可以一键搭建后端环境,但这并不意味着缺乏灵活性。小程序云应用让开发者可以自由组合蚂蚁金服金融科技产品,在满足便捷性的同时实现灵活性。此外,小程序云应用具有高可用架构,提供监控和预警能力。

(3)自主可控:小程序云应用提供服务器,开发者可以拥有、登录或重启服务器,也可以更改密码。也就是说,服务器由小程序云应用提供,但使用权属于开发者。

(4)提高代码研发效率:除了让开发者更容易使用和搭建后端环境外,小程序云应用更注重在开发过程中如何提高代码效率。这里小程序云应用提供了自动生成代码模板的能力。 ,方便开发者使用。

对于一个有服务器的后端研发流程,可以分为4个步骤:搭建云环境和服务器->代码开发->应用发布->应用运维。小程序云应用如何简化各个阶段的开发流程?

首先,作为小程序开发者,需要了解IDE、蚂蚁开放平台和小程序云应用之间的关系:

登录蚂蚁开放平台,可以直接进入小程序云申请页面。还可以通过Ant开发者工具Node.js或者基于Java的IDEA插件进入小程序云应用,让开发者无需在三者之间切换,实现小程序的一站式开发。

了解了小程序一站式开发后,小程序云应用如何帮助开发者搭建云环境呢?底层编排引擎在这里非常重要。通过应用创建、资源创建、数据库配置、网络配置、二级域名和证书自动配置,帮助用户一次性完成云环境的搭建。从用户体验来看,分5步完成。只需点击即可。

IDE提供一键发布功能,帮助开发者直接将应用发布到云端。一键应用发布的背后,小程序云应用实际上融合了CI/CD和发布部署能力,从而为用户提供了良好的一键发布体验。

如何提高代码开发效率?

提高代码开发效率有两个途径:一是代码托管云建设,二是代码模板自动生成。

从代码模板自动生成角度,如技术代码模板,通过支付宝认证获取用户信息,完成文件上传、认证授权、数据库访问等操作,从而为用户提供生成代码的能力;

对于业务代码模板来说,需要根据不同的业务类型,比如支付、营销、信贷等,深度融合蚂蚁金服自身的能力。比如支付,不能用一个接口轻松搞定,而是需要连接多个接口系列中。因此,小程序云应用提供的代码并不是针对某个接口,而是串联起整个支付环节。用户只需要修改一些参数(如公钥、私钥等)即可运行代码。

对于场景化业务来说,不同行业的支付宝小程序除了具备通用能力外,还应该具备行业特色。小程序云应用结合蚂蚁金服多年的行业经验,针对不同行业打造不同的小程序代码模板,从而提高代码开发效率。

小程序云应用的语言框架是怎样的?

小程序云应用的语言框架有两种选择。对于熟悉前端开发的开发者来说,小程序云应用提供了Node.js;对于习惯Java的开发者来说,小程序云应用提供了Boot和Boot两种框架。 Boot 是目前最流行的开源框架,但蚂蚁金服是基于 Boot 构建的一个研发框架,扩展了很多企业级功能,以解决大型团队在开发云原生微服务系统时遇到的问题,比如如类隔离、日志隔离等能力。未来将会开放更多的内部实践。特性,比如上下文隔离、合并部署、动态模块、、、、测试框架等。

为了实现高可用性,小程序云应用提供了以下解决方案的支持:

多个可用区可以简单理解为多个机房;通过SLB+ECS实现负载均衡;弹性伸缩和监控预警能力保证了对高可用性的支持。

小程序云应用后期运维通过Web控制台提供多种运维能力,帮助用户进行应用管理、发布、回滚、启停等。

小程序云应用技术架构:

如上图所示,小程序云应用的底层是阿里云的计算、存储、网络的基础能力,以及蚂蚁开放平台的支付、安全、信用等能力。底层能力之上,是通过蚂蚁金服的应用PaaS平台提供的,基础能力包括环境资源管理、发布部署、弹性伸缩、监控分析、分布式中间件等;基于基础能力构建小程序云应用的场景化能力包括IDE插件的无缝集成、环境搭建以及应用运维和高可用支持。顶级小程序云应用支持阿里巴巴全家小程序,包括支付宝、钉钉、淘宝、高德等。

前段时间,阿里巴巴发布了“一云多终端”计划。 “多终端”是指用户只需开发一个小程序的前端,就可以在钉钉、支付宝、淘宝、高德等平台上使用。 “一云”即支付宝小程序云,通过一台服务器后端支持多个前端。

总而言之,小程序云应用是一种经典的服务器自治运维模式的后端架构。如果开发者不想关心后端如何搭建,只想考虑前端业务逻辑,不妨考虑一下小程序。

小程序

无服务器托管模型

当开发者想要开发一个小程序时,需要考虑的事情有很多:

这是一个典型的场景,也是开发者的标准模型。而对于创业者,或者想要快速开发小程序的人来说,有没有办法简化复杂的后端呢?

想象一下,如果右边的一切都可以简化为一个API,这样用户开发小程序时只需要考虑业务逻辑,后端就可以直接调用相应的API呢?

如何实现? ——>提供思路:

是目前最受开发者关注的技术之一。并不是说不再需要服务器,而是意味着开发者不再需要过多考虑服务器的问题。计算资源的概念表现为服务而不是服务器。它是构建和管理基于微服务的架构的完整过程,允许用户在服务部署级别而不是服务器部署级别管理您的应用程序部署。用户甚至可以管理特定功能或端口的部署,这使得开发人员能够快速迭代并更快地开发应用程序。

小程序后端简化的启示:

传统的开发模式可以抽象为三大类:

计算资源通常称为服务器,包括常见的物理机、虚拟机、容器等;

中间是存储和基础能力。存储包括文件存储、数据库、离线存储等。基础能力是用户在开发过程中常用的辅助能力,比如视频压缩、图像水印、消息、定时任务等;

网络和安全通常是云中最复杂的部分。这里需要考虑安全、稳定、容灾、风控等问题,也是开发者最容易忽视的问题。

基于这个三部分系统,如何简化?

网络和安全简单化:域名、证书、流量控制、容灾等内置于平台,由云端接管,形成底层基础设施,对用户直接透明。

计算资源部分的简化:将其全部内容简化为:云中的所有计算资源,用户直观感受到都是运行池。开发者无需关心如何安排运行池、如何实现弹性等。

简化的存储方法和基本功能:BaaS(as a)是核心。除计算之外的所有后端能力都可以封装为API以供开箱即用。简单来说,用户可以根据需要随时调用相应的API,而不用关心底层的执行和运维。

以上是最直观的抽象。基于原理,如何构建支付宝小程序?

支付宝小程序的结构如下:

我们先来看一下部分。从用户的角度来看,他不需要考虑服务器、文件存储等,只需要关心代码。这就涉及到App的概念了。 App是指当用户向云端提交应用程序时,云端会自动识别该应用程序。用户无需关心中间流程的组件、部署、灵活性,直接通过API调用即可。

BaaS的这一部分就是将所有的能力封装成API。上图列出了三个解决方案:存储解决方案、多媒体解决方案和安全解决方案。以存储解决方案为例。存储方案是实现基于API的文件和数据库存储。例如,用户有一条数据需要保存,可以通过调用存储方案API接口直接保存。

在BaaS之上,在整个小程序体系中,用户不需要关心域名和证书,因为域名、证书、DDoS防御、流量镜像等都已经内置在平台中。需要说明的是,流量镜像是蚂蚁金服独有的能力,可以帮助用户分析流量,发现流量中的风险点,从而对流量进行处理和清洗。

小程序顶层需要解决认证问题。小程序内置支付宝和高德系统,使用时默认包含套餐。随着阿里巴巴小程序的全面整合,云端认证差异的问题将通过系统内置的解决方案得到解决。用户只需使用统一的API即可完成认证。

小程序的关键技术方案如下:

(1)共享资源管理

当用户访问网关时,网关会生成汇总数据。数据信息很简单,比如“一个小程序访问数据库一次”;数据生成后,会进入调度核心,调度核心会根据用户的汇总数据来确定用户的需求。访问哪里并将信息传递给决策者,决策者再将信息录入相应的数据库。

由于用户规模是动态变化的,随着用户规模的增加,系统感知到数据的增加,会重新初始化一个单独的实例,以保证更高的性能和可用性;如果用户数量增长特别快,系统感知到的数据也会在到达后进行一定程度的迁移。这样就可以根据用户的增长动态分配底层资源。

(2) 调度

调度依赖于App的弹性支持。它是如何实施的?

App有两个非常重要的概念:一是灵活、免操作的操作;另一种是基于数量的。所谓按量,是指App按照正在执行的业务量来计算。当用户的访问信息进入调度核心时,如果机器没有开始运行,则将访问信息放入预热池中。 Node.js或Java的执行环境会在预热池中提前初始化,这样当用户访问信息时,可以快速从预热池中调度资源来执行。随着用户访问的信息减少,某些资源将会被释放。这样调度就可以实现根据业务量动态配置底层资源。

(三)数据安全

数据安全问题是核心问题。当小程序将后端服务开放到云端时,如何保证后端服务的安全?

当用户访问信息通过语义控制后,将进入安全规则进行验证。安全规则示例如上图所示。安全规则可以简化为两个:第一,用户的数据写入后,每个人都可以读取;第二,用户的数据写入后,每个人都可以读取。第二,用户写入的数据只能由用户自己修改。

不仅如此,小程序还提供了角色定义,开发者可以指定管理员有哪些权限、访问者可以访问哪些内容等。

小程序的优点:

(1)研发效率大幅提升:小程序解决方案下,无需考虑服务器、资源配置、关联端口等问题,整体开发效率将大幅提升。另外,由于我国域名申请需要备案,备案时间需要30至45天,这意味着新服务的推出至少要等待45天。对于想要小程序快速上线的开发者来说,这绝对是一个漫长的时间。但在小程序解决方案中,用户不需要考虑域名、证书等问题。用户开发完程序后即可上线,大大提高了研发效率。

(2)安全可靠的后端服务:小程序中的网络和安全部分位于基础设施层,相当于平台层,由平台管理和控制,帮助用户实现后端安全服务。整个解决方案是双机房,并且已经为用户做好了数据备份。只要用户使用该解决方案,就将享受安全可靠的后端服务。

(3)降低成本:过去小程序后端开发主要考虑两部分成本:一是人力成本,二是资金成本。使用小程序解决方案后,整个研发团队不再需要配置运维工程师、后端工程师、安全工程师等,只需一名懂Node.js的前端开发人员即可完成前后端- 小程序端开发。

使用小程序解决方案可以节省购买服务器、数据库等成本。调度采用按量付费的方式,只需为运行的服务付费,进一步节省资金成本。

小程序的未来?

(1)更丰富的BaaS:小程序将提供更多基础能力,完善开箱即用的API。

(2)完整的数据分析:对于企业来说,技术的价值远不如数据。数据对于小程序的业务发展具有指导意义。小程序想要在业务层面取得重大突破,离不开完整的数据分析,为用户提供更多指导。小程序将不断完善数据分析,帮助商家更好地服务消费者。

(3)前后端一体化:对于商户来说,建设管理后台非常重要。商户需要录入商品、查看账单等操作。该方案提供了可视化构建的一体化解决方案,通过拖动相应的组件来实现管理后台需求。小程序将继续加强前后端融合,帮助商家更好地管理后台。

(4)场景化解决方案:小程序除了实现通用能力外,还会针对一些特殊的业务场景提供一整套的前后端一体化解决方案,满足商户的个性化需求。

支付宝的小程序云服务将日益成为主流发展模式。 “只要有创意、有想法,未来即使是没有丰富开发能力的人,也能通过云服务高效地开发出好的小程序。” 。

未来,包括淘宝、钉钉、高德地图、饿了么等阿里巴巴几大超级应用的底层能力都将打通,形成无缝连接。这意味着阿里巴巴系统的多元化能力可以随意组合。

比如支付宝小程序不仅可以拥有支付宝的芝麻信用能力,还可以拥有菜鸟的物流能力、饿了么的配送能力、高德地图的LB​​S能力等,这些能力以API接口的形式汇聚成一个API市场。开发人员开发应用程序时,可以轻松获取并按需组装。

想象这样一个场景:你想吃火锅,在高德地图上搜索附近的海底捞,然后通过高德地图导航到那里。同时,高德地图会自动弹出海底捞支付宝小程序。您可以先点餐,领取优惠券;我想去商场购物,进入商场的支付宝小程序。小程序包括停车服务、商户优惠券等。

阿里真的很懂B端。

虽然阿里巴巴的小程序还处于起步阶段,实现案例并不多,但随着各大超级应用底层能力的互通,必然会连接和连接更多的场景。

商家更关心的是流量问题。目前,支付宝、淘宝、高德地图、钉钉、饿了么、微博这五款应用的月活跃用户总数已超过20亿。各大超级应用之间的相互流量分流,将原本相互竞争的流量汇聚到一起,形成超级流量红利。这意味着,通过进入支付宝小程序,电商、金融、生活服务等各行业的开发者和商户将能够快速接入整个阿里巴巴数字经济生态系统,直接复用阿里巴巴二代,而无需重复“重新发明轮子。”十年积累的运营能力。

也就是说,支付宝小程序云服务已经帮你到这里了,剩下的就看谁有能力了。

分享