atlas 项目介绍 | 学习笔记

简介: 简介:快速学习 atlas 项目介绍

开发者学堂课程【开源 Android 容器化框架 Atlas 开发者指南: atlas 项目介绍】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/392/detail/5017


atlas 项目介绍


Atlas 是阿里巴巴集团开源的一块容器化框架,内容大概分为四个部分。

第一部分:Atlas 的介绍,Atlas 是什么?Atlas 能做什么? Atlas 的开源地址,以及我们的联系方式 。

第二部分:基础知识的准备,我们要学习 Atlas 框架原理,需要一些基础知识的储备 。

第三部分: Atlas Demo 工程的讲解,如何使用 Atlas ,如何配置,运行以及各模块之间的关系。

第四部分: Atlas 原理的介绍。


一:atlas 的介绍

1. Atlas 是什么?

Atlas 是伴随着手机淘宝的不断发展而衍生出的一个运行于 Android 系统上的一个容器化框架,我们也叫动态组件化框架。

它主要提供了解耦化、组件化、动态性的支持。覆盖了工程师的工程编码期、Apk 运行期以及后续运维期的各种问题。为什么会出现 Atlas 框架呢?

随着客户端功能的逐渐丰富,代码量、模块量的上升,经常会遇到由于模块相互依赖、模块编译问题等原因造成的整个应用无法打包,影响开发效率,无法按期上线。

由于功能的快速迭代,版本推送间隔的缩小,频繁提示用户升级的做法,造成不好的用户体验和升级率的降低。

Atlas 框架很好地解决了这两个问题。在工程期,可以实现工程的独立开发,独立调试,不再依赖开发期整个客户端不稳定的代码,做到模块的独立。在运维期,通过动态部署的方式提供快速增量的更新修复能力,快速升级,提升用户体验和版本升级效率。

2. Atlas 能做什么

1) 工程模块的独立加载和运行( Atlas 框架能将模块从整包中解耦)

2) 及时上线新需求、快速迭代 (可以通过动态部署的方式,快速上线需求,并且升级率远高于 apk 版本的推送更新。)

3) 业务灰度与技术灰度的快速验证(一些新功能,新技术的尝试,在开发测试同学验证过后,可以通过独立灰度的方式推送给少量用户进行验证。并且验证后可以版本回滚。但是这个灰度需要平台的支持,开源框架的使用需要配合公司的灰度平台进行二次开发。)

4) 动态修复线上故障 (通过Atlas框架生成补丁推送给用户,在不更新版本的情况下快速修复现场故障。)

5) 有问题及时回滚。(回滚是针对动态部署的版本进行的操作,可以将用户的功能回滚到安装 apk 时的版本。)

以上几点多数是通过动态部署完成的

动态部署的概念

动态部署是将两个 apk 的差量推送给用户,完成功能更新的一个过程。

动态部署与原有的 apk 更新策略相比,是一种相对比较轻量化的更新策略,不需要用户下载整个 apk ,只需要下载差量部分的内容来达到更新的效果。

同时也可以静默地完成更新过程,两者相结合,可以使动态更新的生效率远高于普通的升级策略。

3. Atlas 开源地址,

打开的 github 网站

image.png

Atlas 框架是阿里巴巴 group 下面的一个工程,

Atlas-aapt 是基于官方资源打包插件 aapt 进行修改后的版本。主要修改资源段的自定义部分。

Atlas-core 是 Atlas 框架运行时的核心库,负责主件的校验、安装、加载、运行、负责框架运行时的支持以及回滚的知识。

atlas-Demo 这个项目是 Atlas 作者开发的一个 demo ,里面包含了 Alas 的一些基础用法以及配置,这个项目后面会给大家比较详细的介绍。

atlas-docs ,就是文档 atlas-gradle-plug in 这个项目是基于 gradle 的构建插件,也就是我们打包所用的插件,里面包含 apk 打包、动态部署打包以及差量文件生成的逻辑。

atlas-update 这个模块儿是负责将差量文件与原有 apk 安装时的组件进行代码和资源的合并。差量文件的远程下载功能,可以在这个项目里进行二次封装,

相关文章
|
2月前
|
人工智能 NoSQL atlas
官宣!MongoDB Atlas再添新功能!进一步简化构建现代应用程序
利用数据简化高响应性应用程序的构建过程
3134 0
|
12月前
|
存储 人工智能 NoSQL
MongoDB推出五项MongoDB Atlas新功能,帮助企业使用单一开发者数据平台构建新应用程序类别
Beamable、Pureinsights、Anywhere Real Estate及Hootsuite等客户和合作伙伴,正使用MongoDB Atlas新功能构建下一代应用程序
MongoDB推出五项MongoDB Atlas新功能,帮助企业使用单一开发者数据平台构建新应用程序类别
|
SQL 消息中间件 Kafka
atlas 集成cdh
atlas 集成cdh
atlas 集成cdh
|
中间件 atlas vr&ar
Atlas Demo 工程介绍 | 学习笔记
简介:快速学习 Atlas Demo工程介绍
211 0
Atlas Demo 工程介绍 | 学习笔记
|
Java atlas Android开发
Atlas 原理简单介绍 | 学习笔记
简介:快速学习 Atlas 原理简单介绍
250 0
|
消息中间件 SQL 存储
Atlas 2.1.0 实践(2)—— 安装Atlas
在完成Atlas编译以后,就可以进行Atlas的安装了。Atlas的安装主要是安装Atlas的Server端,也就Atlas的管理页面,并确保Atlas与Kafka Hbase Solr等组件的集成。
934 0
Atlas 2.1.0 实践(2)—— 安装Atlas
|
SQL JavaScript Java
Atlas 2.1.0 实践(1)—— 编译Atlas
为什么要做数据治理?业务繁多,数据繁多,业务数据不断迭代。人员流动,文档不全,逻辑不清楚,对于数据很难直观理解,后期很难维护。 在大数据研发中,原始数据就有着非常多的数据库,数据表。 而经过数据的聚合以后,又会有很多的维度表。如果想要对这些数据做好管理,光用文字、文档等东西是不够的,必须用图。
354 0
Atlas 2.1.0 实践(1)—— 编译Atlas
|
SQL 消息中间件 分布式计算
Atlas 2.1.0 实践(3)—— Atlas集成HIve
Atlas 2.1.0 实践(3)—— Atlas集成HIve
490 0
Atlas 2.1.0 实践(3)—— Atlas集成HIve
|
SQL 存储 安全
Sentry 开发者贡献指南 - 数据库迁移
Sentry 开发者贡献指南 - 数据库迁移
184 0
|
Unix atlas 数据安全/隐私保护
Atlas 2.1.0 实践(4)—— 权限控制
Atlas的权限控制非常的丰富,本文将进行其支持的各种权限控制的介绍。
506 0