Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

Performance and scalability of EJB applications

Published: 04 November 2002 Publication History
  • Get Citation Alerts
  • Abstract

    We investigate the combined effect of application implementation method, container design, and efficiency of communication layers on the performance scalability of J2EE application servers by detailed measurement and profiling of an auction site server.We have implemented five versions of the auction site. The first version uses stateless session beans, making only minimal use of the services provided by the Enterprise JavaBeans (EJB) container. Two versions use entity beans, one with container-managed persistence and the other with bean-managed persistence. The fourth version applies the session fasade pattern, using session beans as a fasade to access entity beans. The last version uses EJB 2.0 local interfaces with the session fasade pattern. We evaluate these different implementations on two popular open-source EJB containers with orthogonal designs. JBoss uses dynamic proxies to generate the container classes at run time, making an extensive use of reflection. JOnAS pre-compiles classes during deployment, minimizing the use of reflection at run time. We also evaluate the communication optimizations provided by each of these EJB containers.The most important factor in determining performance is the application implementation method. EJB applications with session beans perform as well as a Java servlets-only implementation and an order-of-magnitude better than most of the implementations based on entity beans. The fine-granularity access exposed by the entity beans limits scalability. Use of session fasade beans improves performance for entity beans, but only if local communication is very efficient or EJB 2.0 local interfaces are used. Otherwise, session fasade beans degrade performance.For the implementation using session beans, communication cost forms the major component of the execution time on the EJB server. The design of the container has little effect on performance. With entity beans, the design of the container becomes important. In particular, the cost of reflection affects performance. For implementations using session fasade beans, local communication cost is critically important. EJB 2.0 local interfaces improve the performance by avoiding the communication layers for local communications.

    References

    [1]
    Rahim Adatia et al. - Professionnal EJB - Wrox Press, ISBN 1-861005-08-3, 2001.
    [2]
    Subrahmanyam Allamaraju et al. - Professional Java Server Programming J2EE Edition - Wrox Press, ISBN 1-861004-65-6, 2000.
    [3]
    Deepak Alur, John Crupi and Dan Malks - Core J2EE Patterns - Sun Microsystems Press, ISBN 0-13-064884-1, 2001.
    [4]
    Cristiana Amza, Emmanuel Cecchet, Anupam Chanda, Alan L. Cox, Sameh Elnikety, Romer Gil, Julie Marguerite, Karthick Rajamani and Willy Zwaenepoel - Bottleneck Characterization of Dynamic Web Server Benchmarks - Technical Report TR02-388, Rice University, 2001.
    [5]
    The Apache Software Foundation - http://www.apache.org/.
    [6]
    Byte Code Engineering Libray (BCEL) - http://jakarta.apache.org/bcel/.
    [7]
    BEA Systems, Inc - Achieving Scalability and High Availability for E-Business - BEA white paper, http://www.bea.com, 2001.
    [8]
    Vladimir Blagojevic and Rickard Oberg - Container architecture - design notes - http://www.jboss.org/online-manual/HTML/ch12.html.
    [9]
    Emmanuel Cecchet, Anupam Chanda, Sameh Elnikety, Julie Marguerite and Willy Zwaenepoel - A Comparison of Software Architectures for E-business Applications - Technical Report TR02-389, Rice University, 2001.
    [10]
    Willy Chiu - Design for Scalability - IBM white paper, http://ibm.com/websphere/developer/zones/hvws, 2001.
    [11]
    Distributed Systems Research Group, Charles University - EJB Comparison Project - http://nenya.ms.mff.cuni.cz, 2000.
    [12]
    Bruno Dumant, Francois Horn, Frederic Dang Tran and Jean-Bernard Stefani - Jonathan: an Open Distributed Processing Environment in Java - Distributed Systems Engineering Journal, vol. 6, 3--12, 1999.
    [13]
    eBay - http://www.ebay.com/.
    [14]
    Jakarta Tomcat servlet container - http://jakarta.apache.org/tomcat/.
    [15]
    JBoss EJB server - http://jboss.org.
    [16]
    JOnAS: Java Open Application Server - http://www.objectweb.org/jonas.
    [17]
    Log4j - http://jakarta.apache.org/log4j/docs/index.html.
    [18]
    MySQL Reference Manual v3.23.36 - http://www.mysql.com/documentation/.
    [19]
    OptimizeIt Profiler - http://www.borland.com/optimizeit/.
    [20]
    Sun Microsystems - Dynamic Proxy Classes - http://java.sun.com/j2se/1.3/docs/guide/reflection/proxy.html, 2001.
    [21]
    Sun Microsystems - ECperf specification - http://java.sun.com/j2ee/ecperf/, 2001.
    [22]
    Sun Microsystems - EJB 2.0 specification - http://java.sun.com/products/ejb/docs.html, 2001.
    [23]
    Sun Microsystems - Java 2 Platform Standard Edition 1.4, Performance and Scalability Guide - http://java.sun.com/j2se/1.4/performance.guide.html, 2002.
    [24]
    Sysstat package - http://freshmeat.net/projects/sysstat/.
    [25]
    Owen Taylor - J2EE Data Access Objects - The Middleware Company - http://www.middleware-company.com/documents/DAOPattern.pdf, 2002.
    [26]
    Transaction Processing - http://www.tpc.org/.
    [27]
    UrbanCode, Inc. - EJB Benchmark - http://www.urbancode.com/projects/ejbbenchmark, 2001.

    Cited By

    View all
    • (2023)Semi-Supervised Range-Based Anomaly Detection for Cloud SystemsIEEE Transactions on Network and Service Management10.1109/TNSM.2022.322575320:2(1290-1304)Online publication date: 1-Jun-2023
    • (2023)Role of Machine Learning in Resource Usages and Security Challenges for Cloud Computing: Survey2023 International Conference on Artificial Intelligence and Smart Communication (AISC)10.1109/AISC56616.2023.10085687(525-530)Online publication date: 27-Jan-2023
    • (2023)Automated database design for document stores with multicriteria optimizationKnowledge and Information Systems10.1007/s10115-023-01828-365:7(3045-3078)Online publication date: 11-Mar-2023
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 37, Issue 11
    November 2002
    385 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/583854
    Issue’s Table of Contents
    • cover image ACM Conferences
      OOPSLA '02: Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
      November 2002
      396 pages
      ISBN:1581134711
      DOI:10.1145/582419
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 04 November 2002
    Published in SIGPLAN Volume 37, Issue 11

    Check for updates

    Author Tags

    1. EJB container design
    2. communication optimization
    3. performance
    4. profiling
    5. scalability

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)48
    • Downloads (Last 6 weeks)4
    Reflects downloads up to 11 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Semi-Supervised Range-Based Anomaly Detection for Cloud SystemsIEEE Transactions on Network and Service Management10.1109/TNSM.2022.322575320:2(1290-1304)Online publication date: 1-Jun-2023
    • (2023)Role of Machine Learning in Resource Usages and Security Challenges for Cloud Computing: Survey2023 International Conference on Artificial Intelligence and Smart Communication (AISC)10.1109/AISC56616.2023.10085687(525-530)Online publication date: 27-Jan-2023
    • (2023)Automated database design for document stores with multicriteria optimizationKnowledge and Information Systems10.1007/s10115-023-01828-365:7(3045-3078)Online publication date: 11-Mar-2023
    • (2022)A workload-driven method for designing aggregate-oriented NoSQL databasesData & Knowledge Engineering10.1016/j.datak.2022.102089142(102089)Online publication date: Nov-2022
    • (2020)Microservices: A Performance Tester's Dream or Nightmare?Proceedings of the ACM/SPEC International Conference on Performance Engineering10.1145/3358960.3379124(138-149)Online publication date: 20-Apr-2020
    • (2020)Resource Management in Cloud Computing Using Machine Learning: A Survey2020 19th IEEE International Conference on Machine Learning and Applications (ICMLA)10.1109/ICMLA51294.2020.00132(811-816)Online publication date: Dec-2020
    • (2020)Contention-aware container placement strategy for docker swarm with machine learning based clustering algorithmsCluster Computing10.1007/s10586-020-03210-226:1(13-23)Online publication date: 24-Nov-2020
    • (2020)A Workload-Driven Document Database Schema Recommender (DBSR)Conceptual Modeling10.1007/978-3-030-62522-1_35(471-484)Online publication date: 3-Nov-2020
    • (2018)TeaStore: A Micro-Service Reference Application for Benchmarking, Modeling and Resource Management Research2018 IEEE 26th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS)10.1109/MASCOTS.2018.00030(223-236)Online publication date: Sep-2018
    • (2018)Hybrid Adaptive Checkpointing for Virtual Machine Fault Tolerance2018 IEEE International Conference on Cloud Engineering (IC2E)10.1109/IC2E.2018.00023(12-22)Online publication date: Apr-2018
    • Show More Cited By

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media