独家|【云+端】战略发布,助力快速上云

2024-03-17 03:58

本文主要是介绍独家|【云+端】战略发布,助力快速上云,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2020 是神奇的一年,而最神奇的是,我们在这一年,实现了从前端 2.0 到 3.0 的迈进。云栖大会上,阿里云宣布 Serverless 2.0 Plus,与淘系技术全面共建,称将整合集团所有相关力量,确保 “云端一体” 战略全面落地

关注【淘系技术】微信公众号,后台回复:923,即可获取全部PPT内容以及视频资料

前言


如今不再是传统的前端开发时代,云 + 端赋予了前端新的能力,新的使命。从传统的服务,到如今的多端,从 Web 、H5 到小程序,亦或者从线下走上云端,前端始终走在业务和技术的浪潮之巅,在这其中,技术总是在迭代和变革,也总是会有不同的声音以及对应的问题。


你是否在传统开发和 Serverless 中犹豫不决,对上云抱有怀疑?是否在开发项目的前端代码和后端代码中切换觉得特别繁琐?是否在开发中后台时觉得能力不足,需要申请服务器配合?是否在小程序开发中碰到资源调用,管理繁琐的问题?

淘系前端技术,我们即将开放新能力,让这些问题都得到解答,就来拭目以待吧。

云和端的生态本来就是一体的,以前有组织隔阂,就会有撕裂和损耗,而如今,云端一体,再也不需要分割。

云 + 端的定位


淘系前端负责人——姜凡(花名:展炎) 带来了他的想法。


在展炎的眼里,前端的知识体系已经到了第二个阶段,从 PC 场景已经变革到了多端的场景。如今,我们需要思考,前端如何从 2.0 迈入未来的 3.0。前端不仅仅是一个资源,更像是一个连接未来的桥梁,以往的资源型岗位,正在慢慢的从传统的前端变成新型应用开发人员,我们希望前端借由云端和平台的能力,来完成整个 3.0 的升级。在过程中,我们的基建,平台,技术,架构都需要升级。

这些前端,不仅仅有着传统端侧的技能,以及使用云、和云结合来完成需求的能力。这些人在核心位置,对提高生产力,创建,研发革命,都产生巨大的推动作用。Serverless 给了前端机会,也让 ”云+端“工程师逐步走向前台,走向未来。

前端结合 Serverless 奔向 3.0


阿里云Serverless 研发负责人——杨皓然(花名:不瞋)提到,云的能力一直在提升,作为开发者也是一直在思考,希望云能够支撑未来十年的研发,以及数千万开发者的研发。前端处在技术的浪潮之巅,一直在持续的创新和迭代,如今,对云的能力提出了更多的要求,这就使得如今 Serverless 体系和前端会结合的更紧密。

淘系业务和 Serverless 的结合,在集团一直有持续的落地,业务的使用也反过来让整个云的能力更加完善和稳定,有了业务的落地,有了沉淀,也能够更多推动开放生态,社区,标准化。

Midway 2.0 - 框架云化


如今在云原生时代,Serverless 体系的加入,使得传统框架也需要做一波升级。Midway 1.0 到 2.0,正式顺应这个浪潮,向未来做出主动变化。

在年初,我们发布了 Midway 面向 Serverless 的第一个版本 ”Midway Serverless“,受到了不少关注,也属于 Midway 体系迈向云时代的一种尝试。



在 Midway 2.0 时期,把 Serverless 的能力合并了进来,让整个开发体系更加完整。Midway 2.0 的目标是两块,一块是面向云的能力,云原生时代的到来,不仅仅能让我们把业务上云,更希望有不同层面的粒度分层,函数便是其中的一块,而 Serverless 应用则是传统应用的延伸,这两块在云上都将发挥出他们的作用。而在框架侧,希望的只是一套代码,能够在多云部署,让开发者使用更简化。



第二块是多场景的能力,传统 Midway 1.0 时期,我们只有 Web 的能力,或者说大多数情况下,只会在 Web 场景使用,并部署到私有化环境。在新的体系中除了常见的 eggjs/koa/express,在云 + 端的浪潮下,还拥有了更多的场景可能性,特别是在前端方面,一体化似乎成了标配,越来越的人在研究如何让前后端一同开发,一同部署,使得整个前端的生态越发的蓬勃。



除了这两大块能力,Midway 2.0 还提供了更多的核心能力,这些能力不仅在 Serverless 场景,也在传统场景可用。

更多的语法糖能力



类似上面的 Socket 装饰器,Midway 在 2.0 里加入了更多的装饰器,希望在简化写法方面做到极致。对比 1.0 的装饰器,2.0 的新增的装饰器更为实用,原本的大坨代码都可以更清晰简洁。



除此之外,切面、组件化,DTO 类型校验,JSON 对象转换等能力,也都已经上线,在 2.0 中可以更多的体验。除此之外,我们还在上线不同场景的示例,包括现有的 rax 、ice 一体化,以及其他的例如钉钉机器人等其他结合的示例。



Midway 2.0 官网已经上线,欢迎尝鲜。


ICE & Midway 一体化


ICE(飞冰) 自 2018 年开源,就主打可视化和海量的物料的方向,让前端开发中后台业务更加的容易。



随着前端技术的发展,越来越多的用于在使用 VSCode,尽快快速轻量的开发,为此 ICE 开发了可视化只能研发助手 Iceworks,基于整个 VSCode 插件生态,让研发变成可视化的组件搭建,进一步减少复杂的代码逻辑。




在如今的前端开发时,如果在碰到有后端接口开发时,在多库,多编辑器之间开发,加上联调的成本,整个周期会变的很长,效率也很低,这也促使”一体化“的需求越来越强烈。除了研发交付成本,还有部署的成本,运维的成本,这些成本在如今的云原生时代,通过 Serverless 的能力,能够尽可能的降低。Serverless 也让整个中小型 Web 应用开发的价值得以最大提现。


前后端一定是通过 HTTP 接口连接起来,传统的一体化,需要去创建一个 HTTP 客户端,启动后端服务,然后去调用,不仅要了解 URL,协议,参数,还要关心对象结构,返回值,即使后端已经定义好接口,前端也无法直接复用。但是在一体化开发时代,整个代码从接口调用转变为”函数调用“,我们可以直接导入”后端代码“,减少了上面看到了的一切东西,所有的都显得自然。



除了开发之外,配合现有 Serverless 发布方案,我们可以快速的将一个一体化应用发布到阿里云平台之上,这也是 Midway 提供的 Serverless 多云发布方案,结合这些功能,离我们 5 分钟开发上线一个应用的梦想就越来越接近了。



Rax&Midway 极速开发云端一体跨端应用


除了中后台,前端的另一大场景 - 多端场景中,Rax 也提供了十分便利的方案,淘系在经过多年的沉淀,Rax 多端框架已经成为无线端业务使用的标配,手淘中几乎所有的的大大小小的业务都是使用 Rax 开发的。



Rax 使用了双引擎架构来实现跨端投放的能力,一是编译时,生成多端代码,另一块是运行时的垫片,同一套代码在不同小程序端的执行,通过两种方案结合,来达到高性能的多端投放的能力。



通过 Rax 和 Midway 的一体化结合,可以在同一个应用中包含前台展示和接口能力,前台展示部分,我们可以通过 Rax Cli 发布到多端和小程序,而服务端,我们通过 Midway 的 CLI 工具,发布到云端的服务,例如 Serverless 函数。



在工程上,整个前端和后端的一体化目录结构和 ICE 类似,都是通过特定的目录约定组合到了一起,而前端的构建器也是通过这样的目录约定来进行编写,执行。


在调试的过程中,一体化是实时刷新的,整个代码是实时编译,实时刷新,包括你的浏览器端,和其他的小程序端,这个多端预览的能力,也是多端框架的标配能力。通过这样的方式,业务能够高效的研发,也能通过 CLI 进行高效的部署,整个体验会比传统非一体化开发效率高非常多。




不管是 ICE 还是 Rax,都是淘系技术开发的前端框架方案,通过这些前端框架和 Midway 的一体化集合,使得整个前端的研发效能飞速的提升,前端整体也会向着未来的应用工程师前进。



Serverless 开启云 + 端时代


阿里云资深产品经理——洪晓龙(墨飏)提到,阿里云为前后端开发者带来全新清晰的上云路径,从传统的架构改造,数据迁移这类基建云化(1.0),逐步变为通过全 Serverless 架构,让业务真正意义的面运维,让业务本身不再关心基建,带来类似水电煤这样的技术底座。




业务创新带来的商业价值是企业的根本,而资源模型的调整,能够给无数的中小企业减少资源成本,阿里云通过预留和弹性两种资源模型,能够尽可能的和业务自身的曲线进行贴合。通过预留资源来减少冷启动的时间,消除影响,而通过弹性资源,来让业务流量的波峰波谷变得平缓。



而如今,Serverless 已经全面在阿里集团落地,结合 Midway Serverless 框架,将业务本身和端侧结合到一起,同时,又能方便的部署到阿里云整个云平台上,和传统的开发能够无缝集成。社区也可以使用这一套新一代研发能力,快速交付,降低成本等。



云 + 端在阿里经济体,淘宝,天猫,1688 等进行全面的落地,通过函数平台提供服务基础的能力,将淘系的导购业务迁移上云,解决了集团业务迁移和快速上线的需求。同时阿里云函数计算解决了集团的发布、上线、和整个研发效率,基建性能等方面的能力,有着卓越的开发体验。



除了集团,还有语雀,新浪,芒果 TV 等业务都有不同程度的应用阿里云函数计算。在整个 Serverless 的支撑下,前端业务正在不断的向前扩张。

小结


Serverless 是未来开发的基座,前端利用 Serverless 快速实现业务交付,以往,前端的开发会受到资源的限制,而如今,在创造力的驱动下,Serverless 使得前端不再受到资源成本的制约,同时又能使用 Node.js 快速的迭代业务,其效率远高于传统开发,而成本又相对较低。如今,这不仅仅是未来,也是当下前端在持续投入的事情,Serverless 和多端技术,整个前端都将有一次大的变革和飞越。快来和我们一起编写云端一体的未来吧。

淘系技术,淘系前端,GO!

✿  拓展阅读

作者|陈仲寅(张挺)

编辑|橙子君

出品|阿里巴巴新零售淘系技术

这篇关于独家|【云+端】战略发布,助力快速上云的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/817729

相关文章

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

springboot security快速使用示例详解

《springbootsecurity快速使用示例详解》:本文主要介绍springbootsecurity快速使用示例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录创www.chinasem.cn建spring boot项目生成脚手架配置依赖接口示例代码项目结构启用s

新特性抢先看! Ubuntu 25.04 Beta 发布:Linux 6.14 内核

《新特性抢先看!Ubuntu25.04Beta发布:Linux6.14内核》Canonical公司近日发布了Ubuntu25.04Beta版,这一版本被赋予了一个活泼的代号——“Plu... Canonical 昨日(3 月 27 日)放出了 Beta 版 Ubuntu 25.04 系统镜像,代号“Pluc

C++快速排序超详细讲解

《C++快速排序超详细讲解》快速排序是一种高效的排序算法,通过分治法将数组划分为两部分,递归排序,直到整个数组有序,通过代码解析和示例,详细解释了快速排序的工作原理和实现过程,需要的朋友可以参考下... 目录一、快速排序原理二、快速排序标准代码三、代码解析四、使用while循环的快速排序1.代码代码1.由快

Win32下C++实现快速获取硬盘分区信息

《Win32下C++实现快速获取硬盘分区信息》这篇文章主要为大家详细介绍了Win32下C++如何实现快速获取硬盘分区信息,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 实现代码CDiskDriveUtils.h#pragma once #include <wtypesbase

Nginx实现前端灰度发布

《Nginx实现前端灰度发布》灰度发布是一种重要的策略,它允许我们在不影响所有用户的情况下,逐步推出新功能或更新,通过灰度发布,我们可以测试新版本的稳定性和性能,下面就来介绍一下前端灰度发布的使用,感... 目录前言一、基于权重的流量分配二、基于 Cookie 的分流三、基于请求头的分流四、基于请求参数的分

Spring AI与DeepSeek实战一之快速打造智能对话应用

《SpringAI与DeepSeek实战一之快速打造智能对话应用》本文详细介绍了如何通过SpringAI框架集成DeepSeek大模型,实现普通对话和流式对话功能,步骤包括申请API-KEY、项目搭... 目录一、概述二、申请DeepSeek的API-KEY三、项目搭建3.1. 开发环境要求3.2. mav

Python如何快速下载依赖

《Python如何快速下载依赖》本文介绍了四种在Python中快速下载依赖的方法,包括使用国内镜像源、开启pip并发下载功能、使用pipreqs批量下载项目依赖以及使用conda管理依赖,通过这些方法... 目录python快速下载依赖1. 使用国内镜像源临时使用镜像源永久配置镜像源2. 使用 pip 的并

SpringBoot快速接入OpenAI大模型的方法(JDK8)

《SpringBoot快速接入OpenAI大模型的方法(JDK8)》本文介绍了如何使用AI4J快速接入OpenAI大模型,并展示了如何实现流式与非流式的输出,以及对函数调用的使用,AI4J支持JDK8... 目录使用AI4J快速接入OpenAI大模型介绍AI4J-github快速使用创建SpringBoot