VJTools Java 常用工具包开源项目

我要开发同款
匿名用户2018年06月04日
25阅读
开发技术Java
所属分类程序开发、常用工具包
授权协议Apache

作品详情

VJTools,是主力于Java的唯品会,关于Java的一些小家底:《唯品会Java开发手册》,核心基础类库VJKit,问题排查工具VJMap和VJTop三部分。

 

1.《唯品会Java开发手册》

《阿里巴巴Java开发手册》,是首个对外公布的企业级Java开发手册,意义重大。

我们结合唯品会的内部经验,参考《CleanCode》、《EffectiveJava》等重磅资料进行了大幅定制,感谢阿里授权修改。《唯品会Java开发手册》在线阅读版 。

 

2.核心类库VJKit

综合众多开源类库的精华而成,让开发人员避免底层代码的重复开发,默认就拥有最佳实践,尤其在性能的方面。

针对“文本,数字,日期,文件,集合,并发,反射”这些开发人员的日常,VJKit做了两件事情:

一是对Guava与CommonLang中最常用API的提炼归类,避免了大家直面茫茫多的API。

二是对各门各派的精华的借鉴移植:比如一些大项目的附送基础库如Netty,ElasticSearch,一些专业的基础库如Jodd,一些大厂的基础库如Facebook和Twitter。

 

3.工具集-VJMap

分代版的jmap(新生代,存活区,老生代),是排查内存缓慢泄露,老生代增长过快原因的利器。

jmap-histoPID打印的是整个Heap的对象统计信息,而为了定位上面的问题,我们需要专门查看OldGen对象,和Survivor区老龄剩男的工具。

致敬R大,思路来源于TBJMap,翻新后支持JDK8,支持Survivor区老龄对象过滤,以及大天秤对输出结果不要看歪脖子的执着。

 

4.工具集-VJTop

若你习惯以Top观察“OS指标及繁忙的进程”,也推荐以VJTop观看“JVM指标及CPU最繁忙,占用内存最多的线程”。

常用场景:

性能问题快速定位,用vjotp显示出CPU或内存繁忙线程,再实时交互翻查该线程的statktrace。

压测场景,使用vjtop实时反馈JVM进程状态,类似于使用dstast对操作系统级别的监控。

生产环境,当应用出现问题时,用vjtop快速了解进程的状态。可与监控系统联合,发现指标如CPU,超时数超阈值时,用钩子脚本调vjtop来纪录事发地的状况。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论