如何开发一款高性能的 gradle transform (mp.weixin.qq.com)

【简介】

对于java开发者来说,大家好像都比较喜欢在编译期间搞事儿,比如为了做到AOP编程,大家都喜欢利用字节码生成技术,常用的有无痕埋点,方法耗时统计等等。那么Android中具体是如何做到这些的呢?所谓字节码插桩技术,其实就是修改已经编译的class文件,往里面添加自己的字节码,然后打包的时候打包的是修改后的class文件。为了便捷的修改编译后的class文件,Google爸爸开发了一套gradle相关的库,也就是gradle-transform-api,利用这个工具,我们可以自己实现class文件修改,下面我们看看具体做法。

点击查看全文 >>

@code小生 2019-08-04 23:51分享 / 0个评论
赞过的人: 技术头条 code小生
要不要再学学下面的文章?
阿里巴巴在应用性能测试场景设计和实现上的实践 (yq.aliyun.com)
本文是《Performance Test Together》(简称PTT)系列专题分享的第5期,该专题将从性能压测的设计、实现、执行、监控、问题定位和分析、应用场景等多个纬度对性能压测的全过程进行拆解,以帮助大家构建完整的性能压测的理论体系,并提供有例可依的实战。
by @可耐芊小仙女 16小时前 分享 查看详情
开发部署提速8倍!这款IDE插件了解一下? (yq.aliyun.com)
对于开发者而言,提高工作效率大概有 2 种主要方式,第一种方式就是加快自己的工作速度,争取在同一段时间内多码一些代码、多干一些活来实现多产;而聪明的开发者会选择第二种方式,就是通过插件,让一些重复性的、繁琐性的工作被自动化,从而节省出时间来做一些实质性的业务,达到轻松又高效的工作步调。
by @可耐芊小仙女 16小时前 分享 查看详情
后端开发实践系列——事件驱动架构(EDA)编码实践 (insights.thoughtworks.cn)
在本系列的前两篇文章中,我作者分别讲到了后端项目的代码模板和DDD编码实践,在本篇将继续以编码实践的方式分享如何落地事件驱动架构。
by @ThoughtWorks 22小时前 分享 查看详情
开发部署效率提升 12 倍,这款应用托管服务让云上运维更简单 (yq.aliyun.com)
使用Web+以前:购买ECS->购买并配置VPC和交换机->配置安全组->购买SLB及配置服务器组->购买RDS及配置数据库->安装语言运行时环境->部署并启动应用->检查应用健康状况->完成,共计8个步骤。使用Web+以后:上传应用部署包->一站配置网络、主机实例、SLB和RDS->结束,只需2个步骤。
by @可耐芊小仙女 2019-08-20 16:06 分享 查看详情
OpenResty 社区王院生:APISIX 的高性能实践 (zhuanlan.zhihu.com)
API 网关的地位越来越重要,它几乎劫持了所有流量,内外之间完成了用户的安全控制、审计,通过自定义插件的方式满足企业自身特定需求,最常见的自由身份认证等。随着服务在数量和复杂度上的不断增长,更多的企业采用了微服务的方式,这时通过 API 网关来完成统一的流量管理和调度就非常有必要。
by @又拍云 2019-08-20 15:21 分享 查看详情
简单几招助您加速 ARM 容器应用开发和测试流程 (yq.aliyun.com)
随着5G时代的临近,低延迟网络、AI硬件算力提升、和智能化应用快速发展,一个万物智联的时代必将到来。我们需要将智能决策、实时处理能力从云延展到边缘和IoT设备端。阿里云容器服务推出了边缘容器,支持云-边-端应用一体协同。在IoT和边缘计算场景,我们不但需要支持X86芯片也要提供对ARM架构芯片的支持。此外随着国产ARM CPU的快速发展,也需要我们在产品测提供ARM版本的容器产品支持。本文将介绍一些简单的技术来加速 ARM 容器应用的开发和测试流程。
by @可耐芊小仙女 2019-08-08 16:40 分享 查看详情
Hadoop YARN:调度性能优化实践 (mp.weixin.qq.com)
YARN作为Hadoop的资源管理系统,负责Hadoop集群上计算资源的管理和作业调度。

美团的YARN以社区2.7.1版本为基础构建分支。目前在YARN上支撑离线业务、实时业务以及机器学习业务。

离线业务主要运行的是Hive on MapReduce, Spark SQL为主的数据仓库作业。

实时业务主要运行Spark Streaming,Flink为主的实时流计算作业。

机器学习业务主要运行TensorFlow,MXNet,MLX(美团点评自研的大规模机器学习系统)等计算作业。
by @zhisheng_tian 2019-08-06 23:04 分享 查看详情
解锁云原生 AI 技能 - 开发你的机器学习工作流 (yq.aliyun.com)
机器学习工作流是一个任务驱动的流程,同时也是数据驱动的流程,这里涉及到数据的导入和准备、模型训练 Checkpoint 的导出评估、到最终模型的导出。这就需要分布式存储作为传输的媒介,此处使用 NAS 作为分布式存储。
by @可耐芊小仙女 2019-07-31 15:14 分享 查看详情
后端开发实践系列——领域驱动设计(DDD)编码实践 (insights.thoughtworks.cn)
本文是「后端开发实践系列」第二篇,主要介绍了DDD中的应用服务、聚合、资源库和工厂等概念以及与它们相关的编码实践,更着重讲到了软件的读写操作在DDD中的实现方式。
by @ThoughtWorks 2019-07-31 09:37 分享 查看详情
高性能缓存服务器 nuster v3.0.0.19 发布,支持硬盘持久化 (github.com)
nuster 是一个基于 HAProxy 的高性能 HTTP 缓存服务器

支持四种硬盘持久模式

off: 默认模式,仅保存在内存
only: 不保存在内存,仅保存在硬盘
sync: 保存到内存和硬盘后返回给客户端
async: 保存到内存后立即换回给客户的,内存数据会由master进程在一定时间后保存至硬盘
by @NusterCacheServer 2019-07-30 12:09 分享 查看详情