Skip to Main Content
Distributed deployment of network applications in wide-area environments has proven effective for improving enduser experience. Another trend is the use of component frameworks for building network services. Their component-based nature makes such applications natural candidates for distributed deployment, but it is unclear if the design patterns underlying component frameworks also enable efficient service distribution. In this paper, we investigate the application design rules and 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 Java Pet Store, a sample component-based e-commerce application. Our results present strong experimental evidence that component-based applications can be efficiently distributed in wide-area environments using a small set of generally applicable design rules for orchestrating interactions and managing component state. We additionally discuss enforcement of these rules, and their automated implementation by container frameworks.