Java开发者值得关注的7款新工具
云计算、大数据地快速发展催生了不少热门的应用及工具。作为老牌语言Java,其生态圈也出来了一些有关云服务、监控、文档分享方面的工具。本文总结了7款较新的Java工具,大家不妨看下。
1. JClarity——性能监控
JClarity目前提供两款有关Java性能的工具:Illuminate和Censum,Illuminate是一款性能监控工具,而Censum是一款专注于垃圾回收的日志分析工具。除了收集和可视化数据之外,这两款工具还会根据检测到的问题提供解决方案。
核心功能:
- 瓶颈问题检测(磁盘 I/O、垃圾回收、死锁等)
- 行动计划——会根据问题提出修改建议,例如“应用程序需要增加活动线程数。”
- 说明——会界定一般问题以及常见的案例,例如在GC中,长时间的暂停可能表示堆体积过小。
独特之处:在监测和定义性能问题后会提供下一步操作——提供可行的建议,当场解决问题。
起源:JClarity于去年9月创建于伦敦,由几位著名的Java性能老将Martijn Verburg、Kirk Pepperdin和Ben Evans创建。
2.Bintray——社交分享平台
Bintray为开发者提供了一种可以分享代码的平台,开发者可以在上面分享开源包,除此以外,它还具备社交功能,用户还可以使用Github账号登陆Bintray。它上面有85000多个文件包,18000多个库,并且显示一些流行库和最新版本。
核心功能:
- 上传文档,并且与世界各地的开发者进行交互;
- 可以用Gradle、 Maven 、Yum 、Apt下载代码库,也可以直接下载;
- 管理发布信息和文档;
- REST API-搜索/检索文档并自动分配。
独特之处:Bintray的基本功能类似于Maven Central,但是Bintray有社交特性,上传文件的步骤也更加简便。
起源:Bintray由以色列创业公司JFrog创立,于去年四月发布,并赢得了JavaOne协会的Duke’s选择奖。
3.Librato——监控&可视化云服务
Librato是一个托管服务,用来管理和监控云端应用程序。用户无需安装或部署任何软件即可创建自定义dashboard,并且非常流畅。
核心功能:
- 数据收集:集成了Heroku、AWS以及数十种收集代理(甚至包括Nest),以及纯语言绑定,Java、Clojure等;
- 自定义报表;
- 数据可视化;
- 自动通知功能。
独特之处:Librato几乎可以表现任何东西,并且把数据变得有意义。
起源:Librato创建于美国旧金山,由Fred van den Bosch,Joe Ruscio, Mike Heffner 和 Dan Stodin合作开发。
4.Takipi–错误追踪和分析
Takipi的目标很简单:告诉开发者代码崩溃的时间及原因。无论何时发生异常,Takipi都会抓取到并给出分析报告,方便开发者改善代码。
核心功能:
- 监测——抓取异常、HTTP和登陆错误;
- 重点排查——经常发生错误的集群,分析错误率是否有上升;
- 分析——查看实际代码和变量状态,甚至通过不同的机器和应用程序。
独特之处:当代码出现错误时,会及时报告出错的代码位置及信息。
起源:Takipi于2012年在旧金山和特拉维夫市创建。每个异常类型和错误都有独一无二的monster表示。
5.Elasticsearch ——搜索和分析平台
ElasticSearch出来已经有一段时间了,但是其1.0.0版本是在今年2月份发布的,它是一个创建于Apache Lucene上的开源项目,托管在Github上,由200多名开发者在维护。ElasticSearch提供了一种可扩展的分布式的RESTful搜索引擎服务。
核心功能:
- 接近实时文档存储,每个字段都是可索引可检索的;
- 它的分布式搜索架构支持小型到大型的应用程序;
- RESTful和原生Java API,还有针对Hadoop的库;
- 开箱即用,也不需要程序员对搜索有很深入的了解,并且它还提供免费模式。
独特之处:容易上手,使用简单。
起源:Elasticsearch由Shay Banon在2010年创立,最近刚刚获得7000万美元的融资。在创建Elasticsearch之前,Banon运营着Compass这款开源项目,现在是一名搜索专家。这个应用最开始是Banon为他的妻子开发的,便于她搜索和保存其最喜欢的食谱。
6.Spark——微Web框架
Spark是一款受Sinatra启发的微型Web框架,最新支持Java8和lambdas。Spark是完全开源的,源码托管在Github上。
核心功能:
- 第一次部署非常快速而简单;
- 灵活的路由匹配;
- 它有一个模板引擎,可以创建支持Freemarker,Apache Velocity 和 Mustache的可重用组件;
- 独立的Spark可运行在Jetty上,也可以运行在Tomcat上。
独特之处:一张图能抵过1000个单词,但截图或许会更直接,用了便知。
起源:Spark是由瑞典的Per Wendel发起的,初期参与的人很少,后来有20多个开发人员参与了开发。
7.Plumbr——内存泄漏检测
Plumbr是一款内存泄漏检测工具,并出具内存泄漏报告。除此以外,它还提供可靠的解决方案。
核心功能:
- 实时内存泄漏检测并给出警报;
- 出具内存泄漏报告:包括具体的时间、大小、速度(MB/h)以及泄漏原因;
- 内存泄漏的代码位置。
独特之处:快速地诊断并给出解决方案。
起源:Plumbr创立于Estonia,由Priit Potter、Ivo Mägi、Nikita Salnikov-Tarnovski和Vladimir Šor几位经验丰富的Java程序员创建。