Java开发者值得关注的7款新工具

时间:2021-04-25 06:25:50

云计算、大数据地快速发展催生了不少热门的应用及工具。作为老牌语言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程序员创建。