BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Java Content on InfoQ

  • Java Garbage Collection Distilled

    CMS, G1, Young Gen, New Gen, Old Gen, Eden, and the hundreds of JVM start-up flags... does this all baffle you when trying to tune the garbage collector to get the required throughput and latency from your Java application? Don’t worry, you are not alone. This article will attempt to explain the tradeoffs when choosing and tuning garbage collection algorithms for a particular workload.

  • Interview: Today's Java with Cay Horstmann

    Cay S. Horstmann, author of Core Java Volumes 1 & 2, has written about Java since the beginning. Topics include the forthcoming Java 8, Java's vendor support, and the language's role in modern software development.

  • Creating Resilient Software with Akka

    Akka Tech Lead Dr. Roland Kuhn offers a behind the scenes look at Akka, showing what the driving forces behind the development of its guiding principles are.

  • Project Lambda from the Inside. An Interview with Brian Goetz

    JSR-335: Project Lambda has been called the "defining" project in Java 8. InfoQ spoke to Oracle's Brian Goetz, JSR 335 spec lead about his observations on Project Lambda from the inside.

  • Tuning the Size of Your Thread Pool

    Thread pools can help us control the number of threads used by a system. A properly sized thread pool will allow as many requests to run as the hardware and application can comfortably support. A poorly tuned thread pool risks completely destabilizing the system. In this article we see how to apply the "measure don’t guess” mantra to properly size our production thread pools.

  • Interview and Book Review: The LogStash Book, Log Management Made Easy

    James Turnbull makes a compelling case for using Logstash for centralizing logging by explaining the implementation details of Logstash within the context of a logging project. The book targets both small companies and large enterprises through a two sided case; both for the low barrier to entry and the scaling capabilities.

  • Native Cross-Platform Apps with Tabris

    Tabris is the first Java toolkit for the cross-platform development of native mobile applications. It combines native user experience with tailor-made, native controls and functions. But what exactly does native mean?

  • 9 Fallacies of Java Performance

    Over the past 18 years Java has evolved into the premiere language of the enterprise. Yet cognitive fallacies persist about Java performance. In this article we examine some popular misconceptions.

  • Choosing the Right ESB for Your Integration Needs

    Kai Wähner explains the differences between an integration framework, an ESB and an integration suite, following with advice for selecting the right one from existing commercial and open source solutions.

  • How Would You Build Up a City from Components?

    Aliaksei Papou explores how components and common design patterns such as the Observer and Finite State Machine make it possible to design an application such that it can grow and change according to your needs using the analogy of a house.

  • Growing EAI with Apache Camel

    This article comprises practical examples of typical integration challenges and explores how Apache Camel can meet these challenges. These examples are presented in the context of an integration solution that starts simply but grows over time as new integration needs arise. The article concentrates on how Camel helps managing complexity and keeping the team productive.

  • Refactoring Legacy Applications: A Case Study

    To refactor legacy code, the ideal is to have a suite of unit tests to prevent regressions. However it's not always that easy. This article describes a methodology to safely refactor legacy code.

BT