写点什么

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

  • 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:18833

评论

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

意犹未尽的一篇Nginx原理详解,面试官看了都忍不住点赞

Java 程序员 后端

成为架构师之前,你一定要懂的-CAP-定理,Java程序员必备书籍

Java 程序员 后端

我在北京已经几年了,Java百度网盘

Java 程序员 后端

我,48岁,上海外企高管,9次Java面试经验总结

Java 程序员 后端

手撕ArrayList底层,透彻分析源码,mysql索引优化面试题

Java 程序员 后端

总是说spring难学?看完这些spring的注解及其解释,对你来说就是So-easy!

Java 程序员 后端

我是全网最硬核的Java中间件领域作者,CSDN最值得关注的博主,大家同意吗

Java 程序员 后端

手把手讲解-一个复杂动效的自定义绘制3,最全153道Spring全家桶面试题

Java 程序员 后端

我凭借这1000道java高频真题,顺利拿下京东、饿了么,java高级开发面试总结

Java 程序员 后端

想进阿里、京东?这些多线程并发的技术要点你需要知道,Java程序员怎么优雅迈过30K+这道坎

Java 程序员 后端

我见过最详细的Redis解析:不懂Redis为什么高性能?如何做高可用

Java 程序员 后端

怎样成为全栈工程师(Full Stack Developer),sqlproformysql使用教程

Java 程序员 后端

我上高中的弟弟都能看懂的Docker学习教程,你看看讲的怎么样

Java 程序员 后端

我用思维导图整理好了Java并发基础知识,还学不会就没救了!

Java 程序员 后端

手把手教你应用三种工厂模式在SpringIOC中创建对象实例【案例详解】

Java 程序员 后端

技术干货:单体,SOA,微服务,分布式,集群架构详解,java开发面试简历

Java 程序员 后端

意犹未尽的一篇Nginx原理详解,面试官看了都忍不住点赞(1)

Java 程序员 后端

快醒醒吧!互联网大厂面试必问的JVM底层原理,你还搞不清楚

Java 程序员 后端

恕我直言,我怀疑你们并不会用 Java 枚举,java分布式架构面试题

Java 程序员 后端

懵逼!阿里一面就被虐了,幸获内推华为技术四面,kafka高性能原理

Java 程序员 后端

成功拿到大厂offer的我熬夜整理了这份Java高频面试题(含答案)

Java 程序员 后端

我出息了,给 JDK 上报了一个 BUG,mongodb入门到精通

Java 程序员 后端

我画了19张图,彻底帮你搞定Redis,mybatisgenerator教程

Java 程序员 后端

怎么用Redis分布式锁才能确保万无一失?,15个经典面试问题及答案

Java 程序员 后端

成功入职阿里,薪资翻倍~ 感谢这份顶级版,linux教程入门教程PDF

Java 程序员 后端

我丢,去面试初级Java开发岗位,被问到泛型,mysql索引原理面试题

Java 程序员 后端

技术分享成就现在的我:中间件兴趣圈荣获CSDN2020博客之星亚军

Java 程序员 后端

总结历年各大厂面试官传授的面试经验+阿里P8级架构师整理的Java高频核心知识点

Java 程序员 后端

怎样成为全栈工程师(Full Stack Developer)(1),已拿offer

Java 程序员 后端

扫盲帖:聊聊微服务与分布式系统,Java校招面试指南

Java 程序员 后端

怎么可能?面试会被Spring难住?Spring框架从入门到精通

Java 程序员 后端

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