Scaling J2EE™ application servers with the Multi-tasking Virtual Machine

  • Authors:
  • Mick Jordan;Laurent Daynès;Marcin Jarzab;Ciarán Bryce;Grzegorz Czajkowski

  • Affiliations:
  • Sun Microsystems Laboratories, 16 Network Circle, Menlo Park, CA 94025, U.S.A.;Sun Microsystems Laboratories, 16 Network Circle, Menlo Park, CA 94025, U.S.A.;Department of Computer Science, AGH University of Science and Technology, Krakow, Poland;Object Systems Group, University of Geneva, Switzerland;Sun Microsystems Laboratories, 16 Network Circle, Menlo Park, CA 94025, U.S.A.

  • Venue:
  • Software—Practice & Experience - Research Articles
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Java™ 2 Platform, Enterprise Edition (J2EE™), is established as the standard platform for hosting enterprise applications written in the Java programming language. Similar to an operating system, a J2EE server can host multiple applications, but this is problematic due to limitations on scalability, weak inter-application isolation and inadequate resource management facilities in the underlying Java platform. These limitations lead to a proliferation of server instances with a consequent dramatic increase in the total memory footprint and more complex system administration. The Multi-tasking Virtual Machine (MVM) solves this problem by providing an efficient and scalable implementation of the isolate API for multiple, isolated tasks, enabling the co-location of multiple server instances in a single MVM process. Isolates also enable the restructuring of a J2EE server implementation as a collection of isolated components, offering increased flexibility and reliability. The resulting system is a step towards a complete and scalable operating environment for enterprise applications. Copyright © 2006 John Wiley & Sons, Ltd.