手淘Native容器化框架发展和思考

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 本文PPT来自淘宝移动平台技术部的资深专家倪生华(花名:玄黎)于10月15日在2016年杭州云栖大会上发表的《手淘容器化框架Atlas实践》。

Atlas应用于几十个团队几百人App的协作中,拥有快速迭代能力,淘系大小型应用普遍采用,运行高稳定性。

手淘的Atlas框架主要提供了组件化、动态性、解耦化的支持。支持工程师在工程编码期、Apk运行期以及后续运维修复期的问题资源加载。

组件化实现:Manifest处理,类加载,按需加载,依赖仲裁,APK构建。

动态性实现:增量动态化方案,基于自研差量算法,实现动态部署,主Bundle基于classloader机制,业务Bundle基于差量merge,支持全业务类型;Andfix (plugin) 实现快速故障修复,基于Nativehook,主要做方法的修改。DexPatch生成,资源Patch生成,Activity新增。

周边优化点:

1.         Bundle重复资源合并

2.         Bundle依赖校验

3.         类库瘦身,方法数裁剪

4.         依赖查询库

5.         混淆Mapping处理

APK包结构、模块分层、容器设计图详见pdf:

0db51948b7983581cc314b2ca71e05cd52ac0c61

d94e0bbc21d10890448505e807f37da388ed5638

c1866aa6d84d05c0cc91ceeade0896f163b88ba7

3a488e88a176f8c4d4c56439dff61e7014f4a303

72fb46178b9486551b1aabad45cfedee4268ab34

d3ab9220b05a9309c7950e0874cd236caeb86307

5b0407ed41d5991fde3e12f88e4824a33554f10c

eb12f328824e9979c84315ee9f0911324c2b0d15

930782b5c9dfec3d9e8c8e4ddef1010afc074944

9c153893643f0d6295c64592b7947416724d9e0b

c683c25e336e01a50d4e0001070d91afcb7a7e67

fed6236e3dbb82bddd6fefc310d06bfe8ab72f6b

8a916dcdc06ddd81d47a2b524ac155447f79812b

5a8980353d6bb3c0b03e2c9cc6e77843c479f525

b22739f5ac673697ae48cfff6dbfa31f41360e9b

4d36e3e18276910c5f415fe194bde927716a2141


84df2135f05a59d8f18fdef08e3eeef8329b7721

897f94865f5743abe3f8999d605363dd1fa6cec1

6a3e6dc6fb20fbe78394139916baedb38df75fbb


8642b32cbd5315de7fdf4be84f409838fad73962

056f6f684cdbdcdbb5d80419349c539781bb3ae0

6ea726dfb1ec4f64d73f37c9fc3f0524c99dc58b

b0ce3aaf3b81ea0c461e55bd2c692bc1982c9f01

b5bad5b864a26c17b84cdbe3119d9247ea21ac4e

fe481ab4d4cd038dbc22ac996274fab0b8506715

cd4ea1a21ed1c91f67fbeebc4bfd7a3dfa1bc314

3e934d50eff048ebb2b06d2104b02521d54421b0

9acbc39ee8a3b6e8ccf4dc61fadb0ae890f81fe1

600425fdd07deae8e0f61c4094cbc918665238d6


目录
打赏
0
0
0
0
79051
分享
相关文章
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之RowSplit容器组件
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之RowSplit容器组件
217 0
从代码到容器:Cloud Native Buildpacks技术解析
Cloud Native Buildpacks(CNB)是一种标准化、云原生的容器镜像构建系统,旨在消除手动编写Dockerfile,提供可重复、安全且高效的构建流程。它通过分层策略生成符合OCI标准的镜像,实现应用与基础镜像解耦,并自动化依赖管理和更新。阿里云应用管理支持通过CNB技术一键部署应用至ECS,简化构建和运行流程。
解密开源Serverless容器框架:事件驱动篇
Knative是一款基于Kubernetes的开源Serverless框架,提供了云原生、跨平台的Serverless编排标准。作为Serverless中必不可少的事件驱动能力,Knative Eventing提供了云原生的事件驱动能力。
荣获2024年AI Cloud Native典型案例,阿里云容器产品技术能力获认可
2024全球数字经济大会云·AI·计算创新发展大会,阿里云容器服务团队携手客户,荣获“2024年AI Cloud Native典型案例”。
|
11月前
|
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Flex容器组件
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Flex容器组件
265 5
|
11月前
|
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Row容器组件
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Row容器组件
195 1
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之FlowItem容器组件
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之FlowItem容器组件
147 1
|
11月前
|
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Scroll容器组件
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Scroll容器组件
800 0
容器技术实践:在Ubuntu上使用Docker安装MySQL的步骤。
通过以上的操作,你已经步入了Docker和MySQL的世界,享受了容器技术给你带来的便利。这个旅程中你可能会遇到各种挑战,但是只要你沿着我们划定的路线行进,你就一定可以达到目的地。这就是Ubuntu、Docker和MySQL的灵魂所在,它们为你开辟了一条通往新探索的道路,带你亲身感受到了技术的力量。欢迎在Ubuntu的广阔大海中探索,用Docker技术引领你的航行,随时准备感受新技术带来的震撼和乐趣。
89 16
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
134 30
下一篇
oss创建bucket
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等