发布于 2017-09-01 00:27:34 | 120 次阅读 | 评论: 0 | 来源: 网友投递
Atlas MySQL中间层
Atlas是由 Qihoo 360, Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目。它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基础上,修改了大量bug,添加了很多功能特性。目前该项目在360公司内部得到了广泛应用,很多MySQL业务已经接入了Atlas平台,每天承载的读写请求数达几十亿条。
Atlas 是伴随着手机淘宝的不断发展而衍生出来的一个运行于 Android 系统上的一个容器化框架,也叫动态组件化 (Dynamic Bundle) 框架。它主要提供了解耦化、组件化、动态性的支持。覆盖了工程师的工程编码期、Apk 运行期以及后续运维期的各种问题。
在工程期,实现工程独立开发,调试的功能,工程模块可以独立。
在运行期,实现完整的组件生命周期的映射,类隔离等机制。
在运维期,提供快速增量的更新修复能力,快速升级。
Atlas 5.0.7.42 更新内容:
端测:
新增:
增加不升级版本号的dexpatch功能 增加bundle从assets安装的功能
修复:
1. 修复7.0动态部署dexcache未生效的bug 2. bundle安装前增加与zipEntry的校验 3. fix 安装提醒dialog的内存泄露 4. art resources 采用新的append 方式,避免并发造成stringblock 异常 5. queryContentProvider等方法高低版本适配 6.其他
构建插件:
1. 升级android builder 到 2.3.3版本 2. unit tag 非 diff bundle 保持 不变 3. tBuildConfig.minPackageId 可设置最小的自动分配packageId,默认35(10进制)开始 加强对插件配置使用的校验 4. 不推荐在atlasplugin之前添加google官方的插件,推荐让atlasplugin自动依赖传递进来 bundle之前的依赖推荐使用bundleCompile, 如果使用compile awb,会有警告日志 awb 之间允许使用 providedCompile 依赖 5. databinding优化,后续bundle的databinding需要独立配置是否启用 tBuildConfig.dataBindingBundles 配置值为 bundle 的packageName 类型为 Set<String> 代码: com.taobao.android.builder.extension.TBuildConfig.dataBindingBundles