Performance and scalability of ejb applications
This presentation is the property of its rightful owner.
Sponsored Links
1 / 15

Performance and Scalability of EJB Applications PowerPoint PPT Presentation


  • 54 Views
  • Uploaded on
  • Presentation posted in: General

Performance and Scalability of EJB Applications. Emmanuel Cecchet et al. Problem Addressed. Performance Scalability of J2EE application servers. Test effect of: Application Implementation Methods Container Design Communication Layer Persistence Management

Download Presentation

Performance and Scalability of EJB Applications

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Performance and scalability of ejb applications

Performance and Scalability of EJB Applications

Emmanuel Cecchet et al


Problem addressed

Problem Addressed

  • Performance Scalability of J2EE application servers.

  • Test effect of:

    • Application Implementation Methods

    • Container Design

    • Communication Layer

    • Persistence Management

  • Using an ebay like auction site server benchmark.


What are j2ee and ejb

What are J2EE and EJB ?

  • J2EE

    • Java 2 Platform Enterprise Edition

    • Java API’s to build dynamic content web sites.

    • Scalable run-time infrastructure to host.

  • EJB

    • Enterprise JavaBeans

    • Managed server-side component architecture for modular construction of enterprise applications.

    • Encapsulates the business logic of the application.

    • Specifically for multi-tier client/server systems.

    • Containers are responsible for providing:

      • Component pooling and lifecycle management

      • Client session management

      • Database connection pooling

      • Persistence

      • Transaction management

      • Authentication and access control.


Figure 1 enterprise java beans in the j2ee framework

Figure 1. Enterprise Java Beans in the J2EE framework.

Apache; Tomcat; JBoss,JOnAS; MySQL


Persistence management

Persistence Management

  • Bean developer decides to manage persistence by:

    • Bean-Managed Persistence (BMP)

      • SQL is embedded in bean code.

      • Only database connection pooling and transaction management services of the container are used.

    • Container-Managed Persistence (CMP)

      • A deployment descriptor contains a one-to-one mapping between bean instance variables and database columns.

      • The container uses the descriptor to generate the necessary SQL statements and ensure concurrency control in the database.


Communication layers

Communication Layers

  • Test both with and without optimizations.


Types of persistence

Types of Persistence

  • Entity beans that map data stored in the database.

    • (usually one entity bean instance per database table row)

  • Session beans that are used to:

    • Perform temporary operations (stateless session beans).

    • Represent temporary objects (stateful session beans).


Ejb container design 2

EJB Container Design (2)

  • Dynamic Proxy approach ( Jboss ).

    • Container Classes are generated at run time making extensive use of reflection.

  • Pre-Compilation ( JOnAS and most commercial implementations ).

    • Classes are generated during deployment reducing run time reflection.


Application implementations 5

Application Implementations (5)

  • Java servlets-only (for comparison)

  • EJB

    • Stateless Session Beans

    • Entity Beans

      • Container-managed persistence

      • Bean-managed persistence

      • Session Façade beans

    • EJB 2.0 Local Interfaces(entity beans with only local interfaces and session beans with remote interfaces)


Figure 2 servlets only to session bean implementation

Figure 2. Servlets-only to session bean implementation.


Figure 3 dao separation with entity beans

Figure 3. DAO separation with Entity Beans.

CMP & BMP


Figure 4 session fa ade design pattern

Figure 4. Session façade design pattern.

Session Façade & EJB 2.0 local interfaces


Implementation complexity

Implementation Complexity


Overall results

Overall Results


Communication optimizations

Communication Optimizations


  • Login