IBM developerWorks : Java technology : Technical library
The latest content from IBM developerWorks
Updated: 10 hours 29 min ago
Wed, 07/28/2010 - 05:00
Block storage is a key foundation to most file systems. File sharing and
file locking are important processes for sharing cloud data resources, and for eliminating
race conditions. Efficient implementation can make a significant mark on your system's and applications' performance levels. In this article, we use an open source example -- cloud platform Eucalyptus and
its storage component Walrus -- to demonstrate how to modify block storage to improve the
file-sharing and -locking mechanisms. Learn how to install Eucalyptus so you
can deliver a top-notch Infrastructure-as-a-Service platform.
Tue, 07/27/2010 - 05:00
The Java language is more than you need for some projects, but
scripting languages are famously lacking on the performance front. Find out how the
Java Scripting API (javax.script) delivers the best of both
worlds, by allowing you to invoke scripts from your Java programs, and vice versa.
Mon, 07/19/2010 - 05:00
Learn how to implement the Hadoop MapReduce framework in a cloud environment and how to use virtual load balancing to improve the performance of both a single- and multiple-node system.
Fri, 07/16/2010 - 05:00
Building, deploying, configuring, then recreating middleware application
environments are critical tasks for IT organizations, but inefficiency often
surrounds this set of tasks. It can take too long to build and deploy; require
too much experience to configure; and be next to impossible to consistently recreate middleware application environments. In this article, the author shows you how WebSphere CloudBurst and the Rational Automation Framework for WebSphere can be combined to harden your dynamic WebSphere cloud application infrastructure.
Thu, 07/15/2010 - 05:00
Java language is the tool of choice for Android developers. The Android
runtime uses its own virtual machine, Dalvik, which is not the usual Java virtual
machine that most Java developers are used to. Dalvik supports most of the features in
the Java programming language -- but not all of them. In this article you will
learn advanced Java features and how they are implemented on Android. This includes
features such as concurrency, networking, and database access.
Wed, 07/14/2010 - 05:00
With configuration, installation, and the use of Hadoop in single- and
multinode architectures under your belt, you can now turn to the task of
developing applications within the Hadoop infrastructure. This final article
in the series explores the Hadoop APIs and data flow and demonstrates their
use with a simple mapper and reducer application.
Tue, 07/13/2010 - 05:00
This installment of Evolutionary architecture and emergent design
continues the discussion of harvesting techniques for idiomatic patterns in emergent
design. When you identify a reusable pattern, you should capture it in a way to sets
it apart from the rest of your code. Domain-specific languages (DSLs) offer many
techniques for concisely capturing data and functionality. This month, Neal Ford shows
you three ways to build internal DSLs that capture idiomatic domain
patterns.
Tue, 07/13/2010 - 05:00
If it's news to you that the JDK ships with the full-featured profiler JConsole,
you'll be even more surprised to learn about the five stand-alone profiling utilities introduced in this article. Find out how lightweight (and in some cases experimental) Java process monitoring and analysis tools can help you hone in on performance bottlenecks like thread starvation, deadlocks, and object leaks.
Tue, 07/13/2010 - 05:00
Developing a rich application for manipulating large amounts of
data used to be the exclusive domain of desktop applications. Now it can be
done in a web application, and you don't have to be a JavaScript guru to do it.
Learn how to use the Dojo toolkit to create eye-popping, data-centric web
applications and hook them up to a back end based on the JavaEE
standards such as JAX-RS and JPA. These technologies allow you to leverage
convention over configuration principles to easily wire together complex
applications in no time at all.
Tue, 07/06/2010 - 05:00
In this JSF 2 fu installment, you'll find out how to combine JSF 2 with Contexts and Dependency Injection (CDI) to implement an Ajaxified wizard. You'll see JSF's templating and Ajax in action, and you'll learn how to use CDI's dependency injection and conversation scope.
Tue, 06/29/2010 - 05:00
Blaming bad code (or bad code monkeys) won't help you find performance
bottlenecks and improve the speed of your Java applications, and neither will guessing. Ted Neward directs your attention to tools for Java performance monitoring, starting with five tips for using Java 5's built-in profiler, JConsole, to collect and analyze performance data.
Tue, 06/22/2010 - 05:00
WS-SecureConversation lets you secure ongoing Web service message
exchanges with less processing overhead than plain WS-Security. In this article,
you'll learn how to configure and use WS-SecureConversation with the three main open
source Java Web services stacks: Apache Axis2, Metro, and Apache CXF. You'll also see how the three stacks compare on WS-SecureConversation performance.
Tue, 06/22/2010 - 05:00
This article shows you how to develop Java components for the FileNet
Component Integrator.
The Component Integrator is part of the IBM FileNet Process Engine.
It enables you to call functions of a custom Java class from a component step within a workflow.
The article describes
how to obtain sessions, debug your Java code, and build and configure a custom JAAS login module for database connectivity.
Mon, 06/21/2010 - 05:00
Many-to-many (m:m) relationships can be tricky to deal with in a Web
application. In this installment of Mastering Grails, Scott Davis shows you how to
implement m:m relationships in Grails successfully. See how they're handled by the
Grails Object Relational Mapping (GORM) API and the back-end database. Also find out
how a bit of Ajax (Asynchronous JavaScript + XML) can streamline the user interface. (This is a test.)
Tue, 06/15/2010 - 05:00
Learn first-hand how to store and query data using Amazon's SimpleDB, a
cloud-based key/value datastore that packs the punch of Amazon's Web Services infrastructure.
Tue, 06/15/2010 - 05:00
Many Java developers never think beyond the basics of JARs -- only using them to bundle classes before shipping them off to the production servers. But a JAR is more than just a renamed ZIP file. Learn how to use Java Archive files at their fullest capacity, including tips for jarring Spring dependencies and configuration files.
Tue, 06/08/2010 - 05:00
A Healthcare Service Bus (HSB) enables diverse healthcare applications to interconnect and interoperate for efficient service delivery. Part 1 of this two-part article discusses the aggregation of healthcare services using Java Business Integration (JBI) architecture. This concluding installment shows how you can use an open source JBI implementation -- Apache ServiceMix -- as an HSB. You'll configure an application as a ServiceMix-hosted internal service, learn how to interconnect multiple JBI environments, and find out how you can integrate an industry standard for healthcare interoperability into ServiceMix.
Tue, 06/08/2010 - 05:00
Until now, Evolutionary architecture and emergent design has primarily focused on emergent design for technical patterns. This installment covers capturing domain idiomatic patterns using domain-specific language (DSL) techniques. Series author Neal Ford illustrates the approach with an example and shows the benefits of this abstraction style for harvesting idiomatic patterns.
Thu, 06/03/2010 - 05:00
The first article in this series showed how to use Hadoop in a
single-node cluster. This article continues with a more advanced setup that
uses multiple nodes for parallel processing. It demonstrates the various node
types required for multinode clusters and explores MapReduce functionality in
a parallel environment. This article also digs into the management
aspects of Hadoop -- both command line and Web based.
Thu, 06/03/2010 - 05:00
The first article in this series showed how to use Hadoop in a
single-node cluster. This article continues with a more advanced setup that
uses multiple nodes for parallel processing. It demonstrates the various node
types required for multinode clusters and explores MapReduce functionality in
a parallel environment. This article also digs into the management
aspects of Hadoop -- both command line and Web based.