Wednesday 27 January 2016

7 New Tools Java Developers Should Know

7 New Tools Java Developers Should Know
Get ready to lock and load through this quick overview of some of the newest most innovative, tools around. In case you’ve missed it, Rebel Labs recently released the results of a global survey of the Java tools and technologies landscape. Alongside the big names and established tools, the market is bubbling with fresh tools and frameworks that not so many people have heard of (yet). In this post I decided to gather a short list of such tools, most of them launched just recently. Some are Java specific and some support other languages as well, but they’re all great for Java projects and share a vision of simplicity.
1. JClarity – Performance Monitoring
Launched last September, JClarity is now offering two products around Java performance: Illuminate and Censum. Illuminate is a performance monitoring tool, while Censum is an application focused on garbage collection logs analysis. More than just collecting data or visualizing it, both tools provide actionable insights to solve the issues they detect.
“What we want to do is to move the problem from data collection to data analysis and insight”– JClarity Co-Founder Ben Evans.

Key features:
  • Bottleneck detection (Disk I/O, Garbage Collection, Deadlocks, and more).
  • Action plan – Recommendations to solve the problem, such as “The application needs to increase the number of active threads”.
  • Explanation – Defining the problem in general and the common causes for it, for example “A high percentage of time spent paused in GC may mean that the heap has been under-sized”.

2. Bintray – Social Platform for Binaries
Java developers are being kept in the dark in a way when importing libraries from “anonymous” repositories. Bintray adds a face to the code and actually, serves as a social platform for developers to share open-source packages (Did someone say GitHub for binaries? Login with GitHub for the full inception effect to kick in). It has over 85,000 packages in 18,000 repositories, while showcasing popular repositories and new releases.


Key features:
  • Upload your binaries for the world to see, get feedback and interact with other developers.
  • Download libraries with Gradle / Maven / Yum / Apt, or just directly.
  • Manage release notes and documentation.
  • REST API – Search / Retrieve binaries and automate distribution.

3. Librato – Monitoring & Visualization Cloud Services
A hosted service for monitoring and managing cloud applications, Librato can create custom dashboards in seconds without a need to set up or deploy any software. Oh, and it just looks and feels so buttery smooth compared to other dashboards.
“Data is only as valuable as the actionable insights you can surface from it”, Says Joe Ruscio, Co-Founder & CTO.

Key features:
  • Data collection: Integration with Heroku, AWS, tens of collection agents (EvenNest) and pure language bindings with Java, Clojure and others.
  • Custom reports: Metrics & alerts through email, HipChat, Campfire, and just HTTP POST requests to integrate with anything you can think of.
  • Data visualization: Beautiful graphs with annotations, correlations, sharing and embedding options.
  • Alerts: Automatic notifications when metrics cross certain thresholds.

4. Takipi – Error tracking and analysis
Takipi was built with a simple objective in mind: Telling developers exactly when andwhy production code breaks. Whenever a new exception is thrown or a log error occurs – Takipi captures it and shows you the variable state which caused it, across methods and machines. Takipi will overlay this over the actual code which executed at the moment of error – so you can analyze the exception as if you were there when it happened.

Key features:
  • Detect – Caught/uncaught exceptions, Http and logged errors.
  • Prioritize – How often errors happen across your cluster, if they involve new or modified code, and whether that rate is increasing.
  • Analyze – See the actual code and variable state, even across different machines and applications.

5. Elasticsearch – Search & Analytics platform
Elasticsearch has been around for a while, but Elasticsearch 1.0.0 was released just recently in February. It’s an open-source project built on top of Apache Lucene and hosted on GitHub with over 200 contributors. You can check out the code. The main promise Elasticsearch provides is an easy to use scalable distributed RESTful search.
Key features:
  • Near real-time document store where each field is indexed and searchable.
  • Distributed search with an architecture built to scale from small to large applications.
  • A RESTful and a native Java API among others. It also has a library for Hadoop.
  • Works out of the box and doesn’t necessarily require deep understanding of search, it can also be schema free so you can start real fast.

6. Spark – Micro Web Framework
Back to pure Java, Spark is a Sinatra inspired micro web framework for quickly creating web applications. It was rewritten earlier this year to support Java 8 and lambdas, Spark is open-source and its code is available on GitHub. It’s being developed by Per Wendel and a small number of contributors over the last few years in a mission to support rapid creation of web applications with minimal effort.
Key features:
  • Quick and simple setup for your first deployment.
  • Intuitive route matcher.
  • A template engine to create reusable components that supports Freemarker, Apache Velocity and Mustache.
  • Standalone Spark runs on Jetty but can also run on Tomcat.
7. Plumbr – Memory Leak Detection
Going deeper in the JVM, the Garbage Collector scans for objects that are no longer being used. However, sometimes developers will still hold references to objects in memory they no longer use. This is where memory leaks happen, and where Plumbr comes in. It detects and reports if the application has memory leakage issues and provides actionable information to fix it.
Key features:
  • Live memory leak detection and alerts.
  • A report with time, size, velocity (MB/h) and significance of the leak.
  • The location of the memory leak in your code.

 For more information, please visit : www.programmingyan.com

No comments:

Post a Comment