Title: Efficiently Distributing Component-based Applications Across Wide-Area Environments


Authors: Deni Llambiri, Alexander Totok, and Vijay Karamcheti

Distribution and replication of network-accessible applications has
been shown to be an effective approach for delivering improved 
Quality of Service (QoS) to end users. An orthogonal trend seen in 
current-day network services is the use of component-based frameworks.
Even though such component-based applications are natural candidates
for distributed deployment, it is unclear if the design patterns
underlying component frameworks also enable efficient service
distribution in wide-area environments. In this paper, we investigate
application design rules and their accompanying system-level support
essential to a beneficial and efficient service distribution process.
Our study targets the widely used Java 2 Enterprise Edition (J2EE)
component platform and two sample component-based applications: Java
Pet Store and RUBiS. Our results present strong experimental evidence
that component-based applications can be efficiently distributed in
wide-area environments, significantly improving QoS delivered to end
users as compared to a centralized solution. Although current design
patterns underlying component frameworks are not always suitable, we
identify a small set of design rules for orchestrating interactions
and managing component state that together enable efficient
distribution. Futhermore, we show how enforcement of the identified
design rules and automation of pattern implementation can be supported
by container frameworks.