写点什么

“一次编码、到处运行”,淘宝云端一体化探索(二)

  • 2019-12-19
  • 本文字数:1521 字

    阅读完需:约 5 分钟

“一次编码、到处运行”,淘宝云端一体化探索(二)

GAIA 业务轻量级研发运维模式探索实践

基于这样的背景, GAIA 应孕而生,与闲鱼、 aplatform 淘系互动平台两大业务紧密合作,通过 GAIA 云端 FaaS 技术能力,重新定义了研发的职责和边界,让程序员回归最初的程序,结合端上的跨平台实现云端一体的轻量级业务研发运维模式。


闲鱼全新的研发模式如下图:



进展结果:


  • 闲鱼业务落地实例,通过云端一体化研发模式,使原本 60 天的项目时间,减少了 20 天,提效 33% 。

  • 88 VIP 互动 aplatform ,几十万 QPS 业务流量平稳可靠运行,轻量级复合多容器设计模式的集团首次规模化验证。

GAIA 设计理念

  • 通过容器化设计模式,把基础设施下沉与业务解耦,代码运行环境对业务透明化


轻量级复合多容器设计模式



我们的应用目前都仍是富容器模式,重要的问题是容器职责不单一,造成隔离性以及业务与基础设施紧密耦合的问题。


容器做为 GAIA 的关键,其设计模式进行了革命性的升级,也是集团首次大规模的尝试。


  • 基于 K8s 的 pod 轻量级复合多容器能力,重新定义了业务与基础设施的边界,通过 sidecar 承载基础设施

  • 通过容器化的编排调度,实现资源、流量与容器生命周期统一,为按需使用奠定基础架构

  • 基于 configmap ,实现配置与环境解耦,实现容器镜像的不可变性,日常、预发、生产镜像的统一,降低复杂性

  • 基于 Init Container 技术,实现 function 业务与基础设施彻底解耦,通过容器生命周期初始化机制组合 function+ 基础设施构建运行态,为业务 function 与基础设施各自独立运维提供支撑

  • API 服务注册发现等基础设施能力下沉到 K8s 技术体系


通过这些容器的设计能力,业务研发只需要编写业务逻辑代码即可,同时通过声明式的 API 透出,快速完成了云端业务的落地能力在移动端,小程序等容器也封装隔离业务的运行环境, flutter 亦是如此,研发人员进入面向容器编程,通过容器来隔离基础设施,屏蔽运行环境平台的差异性。



GAIA 是开放性的平台,按其容器设计规范,闲鱼对 dart 语言按规范应实现了 function 容器, aplatform 的引擎与 GAIA 的 Java 容器对接的成功,解决了平台型应用以及任何应用基于 GAIA 实现 serverless 化的解决路径(集团存量万+级别的应用)。

总结展望

目前 GAIA 和闲鱼以及 aplatform 淘系互动进行的实践是一次意义重大的定义探索, “一次编码,到处运行” ,让程序员回归程序,当前云端技术上是初步的结合,未来还待深度的体系挖掘建设未来的展望:


  • 业务轻量级研发运维模式是不可阻挡的未来

  • 天下大事,分久必合合久必分,5G 万物互联即将到来,多种终端设备,需要轻量级研发运维模式的支持,从驱动研发模式演进的“降低技术门槛、跨平台能力”本质出发,高效的业务落地能力是王道,当前分云 +iOS+android 的多端多人协作模式必将逐步淘汰。

  • 面向容器化、统一 API 服务编程

  • 云和端运行环境容器化,是业务与基础设施解耦的必经之路,通过容器化封装隔离运行环境,通过容器提供的统一的 API 服务接口交互;云与端容器技术会趋同,两端容器会紧密的互动,云端在技术体系上更深度的结合,实现云端技术体系闭环。

  • 工程体系归一,客户端、服务端统一版本化发布升级

  • 目前割裂的研发模式,典型的表现是多端各自代码分支;业务云端一体化轻量级研发模式,业务的工程体系将会云端归一,在一个工程项目里面,定义服务接口,在云端容器实现服务透出,在客户端容器实现服务调用;同时云和端会统一化的版本化发布运维体系,这里需要对整个研发模式体系的再定义。

  • 技术部门组织架构的变革

  • 人的要求变化,支持业务的组织生产关系将升级。

我们的使命

“革新研发模式、重构研发生态”


“一次编码、到处运行” - 业务云端一体化轻量级研发运维模式,等待我们一起建设。


本文转载自淘系技术公众号。


原文链接:https://mp.weixin.qq.com/s/NSWhgJ132qbaCudIsJt7xw


2019-12-19 18:18736

评论

发布
暂无评论
发现更多内容

Terraform中使用prevent_destroy搭配override文件防止误删资源

大可不加冰

云计算 基础设施即代码 IaC Terraform HashiCorp

从源码中来,到业务中去,React性能优化终极指南

有道技术团队

大前端 React 有道精品课

合作伙伴眼中的HarmonyOS 专访方太智能厨电专家俞贵涛

科技汇

最佳入门系列 | 何为服务网关?

架构精进之路

微服务 5月日更

出于信仰,我去考了一个证

大可不加冰

云计算 IaC Terraform HashiCorp

如何通过别名扩展Git

kenny

bash git git扩展

Django 之视图篇

若尘

django 视图 Python编程 5月日更

2021百度之星报名开启 特设“小星星”奖项鼓励少年AI人才

百度大脑

AI 百度之星 少年

并发王者课-青铜5:一探究竟-如何从synchronized理解Java对象头中的锁

MetaThoughts

Java 多线程 并发 并发王者课

Qemu KVM Guest增强简述

焱融科技

云计算 虚拟机 高性能 存储 qemu

聊聊微服务治理的落地问题 | Geek大咖说第二期

百度Geek说

微服务 自动化

MySQL 数据库救火:磁盘爆满了,怎么办?

华为云开发者联盟

数据库 磁盘 MySQL 数据库 日志文件 磁盘爆满

Dubbo 序列化

青年IT男

dubbo

另一种总结的方式

Nydia

学习

☕️【Java 技术之旅】从底层分析LockSupport原理机制

码界西柚

Java JVM lock锁 5月日更 LockSupport

教你用User Story设计BI驾驶舱

薄荷点点

数据产品经理 用户故事地图 产品需求

用Terraform申请Letsencrypt证书

大可不加冰

云计算 证书 IaC Terraform HashiCorp

集群镜像:实现高效的分布式应用交付

阿里巴巴云原生

数据库 容器 开发者 云原生 存储

索信达控股:金融机构如何打造最适合自己的个性化推荐系统?

索信达控股

大数据 金融科技 金融 个性化推荐 营销数字化

BI系统里的数据赋能与业务决策

薄荷点点

数据产品经理 决策 BI 数据驱动 风险识别

这可能是中文互联网第一本系统性讲解Terraform的入门教程

大可不加冰

云计算 IaC Terraform HashiCorp 不可变基础设施

谋而后动:解读数仓计划生成中行数估算和路径生成的奥秘

华为云开发者联盟

计划 数仓 GaussDB(DWS) 查询语句 估算

并发王者课-青铜6:借花献佛-如何格式化Java内存工具JOL输出

MetaThoughts

Java 多线程 并发 并发王者课

阿里云联合中国信通院发布《云计算开放应用架构》标准,加速云原生应用规模化落地进程

阿里巴巴云原生

容器 开发者 运维 云原生 k8s

要想成为牛人,推荐学习哪种编程语言?

实力程序员

OCR性能优化:从神经网络到橡皮泥

华为云开发者联盟

神经网络 机器学习 OCR 橡皮泥 CNN网络

网格策略交易软件,量化马丁倍投交易机器人

吾日三省 - DAY 16

Qien Z.

5月日更 半年总结

安全专栏加餐

escray

学习 极客时间 安全 5月日更 安全攻防技能30讲

【Flutter 专题】124 日常问题小结 (三) 自定义 Dialog 二三事

阿策小和尚

5月日更 Flutter 小菜 0 基础学习 Flutter Android 小菜鸟

2021年爆火的低代码开发技术,对企业而言有什么好处?

优秀

低代码

“一次编码、到处运行”,淘宝云端一体化探索(二)_文化 & 方法_淘系技术_InfoQ精选文章