Sponsored Links


Resources

Enterprise Java
Research Library

Get Java white papers, product information, case studies and webcasts

IntroductionIntroductionIntroduction

Java Performance Management for Large-Scale Systems

There are many classes of enterprise applications that have stringent performance and scalability requirements. TheServerSide.com has assembled a collection of resources to help you better design, develop, test and manage high performance, large-scale systems - learn new and innovative approaches for performance tuning, memory management, concurrent programming, JVM clustering and more.

Featured ContentFeatured ContentFeatured Content
On24
Format:
mp3

Extreme Transaction Processing, Low Latency and Performance

In this podcast, John, who has over 30 years of experience in investment banking and integration technology, John will cover several case studies of extreme transaction processing, low latency and high performance systems and offer insight into what we might expect to see in mainstream in the near future.
On24
Format:
mp3

Java Performance Tooling

No one writing Java applications should be without an understanding of how to fix things when they go wrong. Diagnosing performance problems can be difficult; sometimes even knowing where to start is hard. In this podcast, Holly will introduce a number of tools for identifying and fixing common Java performance problems.

Introduction to the Real Time Performance Monitor (RTPM)

Speaker: Azul
The Azul REALTime Performance Monitor (RTPM) is highlighted in this 12-minute introductory presentation and demonstration. Take a virtual tour of the tool that lets you analyze your application's thread stacks, CPU, I/O, GC and memory usage on-the-fly in both development and production.

Real Time Performance Monitor

Speaker: Cliff Click, Azul's Chief JVM Architect
Cliff Click, Azul's Chief JVM Architect, gives a hands-on demonstration of how to use the REALTime Performance Monitor (RTPM) tool to do performance and bottleneck analysis. He examines the popular Apache open-source struts2 framework under load, and uses RTPM to pinpoint a hot lock preventing efficient multicore scaling. After modifying the source code fingered by RTPM, he demonstrates a dramatic performance imporovement.

Using RTPM to Find an I/O Performance Bottleneck in Apache Struts 1

Speaker: Azul Systems
The Apache struts1 package is analyzed under load in this demonstration of Azul's REALTime Performance Monitor (RTPM) tool. Using the profiling tool's abiility to measure system call rates, we find and fix an I/O-related bottleneck.

Compute Pool Manager

Speaker: Azul Systems
Azul's Compute Pool Manager (CPM) offers both application owners and IT operators a window into application behavior. See how you can use the perfbar application built in to CPM to watch CPU core activity in real-time.
Tech TalksTech TalksTech Talks
On24
Format:
On24

Kirk Pepperdine, Holly Cummins, John Davies and Gil Tene

This TechTalk details how the pauseless garbage collection is now being utilized to overcome such performance challenges. Discover various methods of garbage collection, how it is being improved and effectively managed. Explore how pauses are being removed from garbage collection, improving Java application throughput and performance. Learn how problems such as compaction and marking are being overcome in garbage collection and gain a comprehensive understanding of the key factors impacting pause time in collectors.
On24
Format:
On24

Gil Tene, Vice President of Technology and CTO, Co-Founder, Azul Systems

This Techtalk discusses how compute appliances can be used to optimize the performance for demanding Java applications. Learn how these appliances can be used to power Java Virtual Machines and existing servers, delivering greater CPU and memory capacity. Discover how to allow enterprise Java applications to transparently deliver greater scalability, throughput and consistent response times without changes to the existing code.
On24
Format:
mp3 and slides

Gregg Sporar, Technical Evangelist on the NetBeans project, Sun Microsystems

In this presentation, recorded at TSSJS 2007, Gregg examines some of the tools and techniques available for detecting memory leaks and uses from real-world Java applications. Gregg shows how to track down a memory leak where multiple object instances of the same class are created over time, some of which are the source of a leak and others of which are not. Gregg also examines how to debug a memory leak where only a single object instance is the source of the problem. Each of these examples involves a brief examination of the source code and a demonstration using a monitoring/profiling tool. Slides for this presentation can be viewed here.
On24
Format:
mp3 and text

Dr. Holly Cummins

If you think garbage collection is a bad thing, you haven't heard Dr. Holly Cummins, noted IBM garbage collection tuning specialist, who gives her opinion on the subject. In this podcast interview, she discusses why garbage collection is good and a number of other topics all to do with Java heap space, garbage collection and other matters that can be seen a activities that degrade application performance and throughput.
On24
Stream:
On24

Brian Goetz, Sr. Staff Engineer at Sun Microsystems and Dr. Cliff Click Chief JVM Architect of Azul Systems

In this interview, Brian Goetz and Cliff Click detail the best practices necessary for creating highly concurrent software. They discuss the meaning and purpose of concurrent software, threads and parallel computing, describe how parallel computing affects the design of programs and examine the challenges surrounding writing acceptable parallel systems.
On24
Stream:
On24

John Davies and Gil Tene

John Davies and Gil Tene sat down with Kirk Pepperdine to describe Azul's multi-processor hardware from a consumer's standpoint, especially with respect to SOA.
On24
Format:
mp3 and text

Cliff Click

While at TSSJS Barcelona, Cliff Click from Azul systems spoke with Kirk Pepperdine about his work at Azul, his involvement with the -server compiler team, and a whole host of hardware issues as they relate to the Java memory model, thread safety, and program correctness.
On24
Stream:
On24

Gil Tene

In this interview, Gil Tene talks about Azul's high capacity boxes, which run from 192 to 768 cores (with up to 750GB of memory) and provide that power to other systems as a Java "compute appliance." Gil also describes some of the problems applications might find in using such massive compute appliances, and how Azul works around it.
On24
Stream:
On24

TSSJS 2007 Panel

Nati Shalom of Gigaspaces, Bob Lozano of Appistry, Gil Tene of Azul, John Davies of IONA and Kirk Pepperdine of TSS discuss high performance computing on a panel at TheServerSide Symposium 2007.
On24
Stream:
On24

Bob Pasker - Java and Large-Scale Systems

Azul Systems is at the forefront of building large-scale, long running applications in Java. In this tech talk, given at JavaOne 2006 in San Francisco, Vice President and Deputy CTO Bob Pasker describes how Azul overcomes obstacles such as the locking problem in Java through consolidation and application behavior.
New ArticlesNew ArticlesNew Articles

Load-balancing Tomcat with Apache

By Avneet Mangat

This article discusses some alternatives for load balancing an application server behind Apache httpd, including implementation details for setting up load balancing, some of the features provided by apache such as 'server affinity,' and safe removal of server nodes.

Concurrency Testing in Java Applications

By Frank Cohen

Testing and optimizing Java code to handle concurrent activities is difficult without test automation. Even with test automation, being able to correlate the test activity from the client side to observations of thread, memory, object and database connection use on the server side is difficult at best. In this article, Frank Cohen describes methods for concurrency testing in Java applications and shows a new technique to correlate what a Java application server is doing on the server side while a load test automation tool drives a test on the client side.

Using AOP for Application Performance Management

By Srinivas Narayanan, Kamal Govindraj, and Binil Thomas

Application developers have traditionally used a few different techniques to deal with performance management, including profiler tools, inserting timing calls within specific points of the code and bytecode instrumentation. This article presents a quick introduction on using Aspect Oriented Programming (AOP) as an alternative and flexible mechanism for Application Performance Management.

No Objects Left Behind

By Kirk Pepperdine

In this article, Java performance tuning specialist Kirk Pepperdine attempts to clarify some common pre-conceptions around Java memory management. He examines how poor coding practices can lead to inefficiencies in garbage collection and explores some techniques for ensuring that objects are managed more effectively by the GC.

High Performance and Standard Transformation for Complex Financial Services Messages

By John Davies

In this white paper, John Davies, CTO of software development firm Century 24 Solutions Limited [C24], introduces the company's Integration Objects (IO) and describes their move to XSLT and XQuery for transformation. He then links to PDF by Mike Kay, author of XQuery and XSLT, on XQuery.

Testing Concurrent Programs

By Brian Goetz

In this article, Brian Goetz, author of the recently-released Java Concurrency in Practice, explores some of the major issues in testing concurrent classes, and offers some techniques for constructing concurrent programs that make them easier to test.

TSSJS Show Coverage - Gil Tene on Pauseless Garbage Collection

By Frank Cohen

Frank Cohen interviewed Gil Tene at JavaOne on Azul's pauseless garbage collection feature. According to Tene, a recent performance benchmark of the product yielded 35 Gigabytes/second of continuous hashmap allocation rates, with no garbage collection pause.

Designing Performance Testing Metrics into Highly Distributed J2EE Applications

By Frank Teti

Frank Teti describes a reusable mechanism for capturing application-bound, performance statistics for highly distributed J2EE applications. He examines the design and edits required to collect basic instrumentation/timing estimates for a sample Internet Order Entry Application distributed across a 5-tier architecture.

Continuous Performance: The Next Advance in Software Development

By Cody Menard

This article examines the benefits of Continuous Performance, a best practice that borrows from the basic Continuous Integration theory of multiple builds. Using Continuous Integration, development teams conduct builds at least once a day, allowing programmers to fix bugs faster and easier than if they were to wait for weeks to test new code. Similarly, testing performance several times a day makes performance tuning vastly more efficient. Continuous Performance can result in software that performs better overall, because code is cleaner throughout the development process.

J2EE Best Practices for Performance

By Darren Broemmer

Learn all about the best practices for performance engineering in J2EE Web applications. This chapter, excerpted from Wiley's "J2EE Best Practices", looks at the role of performance in the development process and discusses a number of techniques to optimize the architecture, design and code in your J2EE application components such as Entity Beans, Message-Driven Beans, and when processing XML.

Distributed Computing Made Easy

By Jonas Bonér

In this article, Jonas Bonér walks through a fairly generic but common distributed computing problem and shows how it can be simplified using clustering at the JVM level.

BooksBooksBooks

Performance Tuning Methodology

By Steven Haines

According to Steven Haines, performance and scalability testing are crucial to successful application deployment. These two chapters, taken from Pro Java EE 5 Performance Management and Scalability, illustrate how to set up a proper testing environment and the strategy of ensuring performance before testing for scalability.

Performance and Scalability Testing

By Steven Haines

According to Steven Haines, performance and scalability testing are crucial to successful application deployment. These two chapters, taken from Pro Java EE 5 Performance Management and Scalability, illustrate how to set up a proper testing environment and the strategy of ensuring performance before testing for scalability.

Improving J2EE Application Performance

By Scott Marlow

This article describes how to achieve a high level of performance in a J2EE application, independent of which Application Server you use. A structured approach to improving performance will be described that ranges from broad strokes (monitoring J2EE Application Server resource usage) to fine strokes (finding bottlenecks in the application). After reading this article you will find that performance isn't just an occasional activity--- performance is a state of mind.

ResourcesResourcesResources

Architecting High Performance eCommerce Platforms

With the mainstream adoption of eCommerce applications, organizations are facing demanding levels of performance, scalability, and availability. This white paper discusses the steps necessary to build and maintain successful eCommerce architectures. Learn how to incorporate business drivers and demand models into your eCommerce architecture for greater levels of scalability and performance.

REALTime Performance Monitor

More than ever, enterprises are relying on Java to support demanding and critical business functions. This white paper details how Azul Performance Monitor is a new breed of diagnostics and tuning tool instrumented into the Azul Virtual Machine.

High Performance, Low Cost Solutions for eCommerce

Surviving and thriving in today's competitive online retailing world is not getting easier. This white paper provides insight on technology that scales eCommerce applications to support more advanced end-user funtionality and a rapidly growing user base.

Breakthrough Solutions for the Capital Markets

Massive growth in trading volumes, increased trading sophistication and instrumental complexity, combined with ever demanding clients characterizes today's typical financial services business environment. This white paper details high capacity network systems that reduce complexity and ensure the dynamic, predictable, and cost efficient scalability of high-volume enterprise Java deployments.


News | Blogs | Discussions | Tech talks | Patterns | Reviews | White Papers | Downloads | Articles | Media kit | About
Java Solutions
All Content Copyright ©2007 TheServerSide Privacy Policy
Site Map