Your SlideShare is downloading. ×
Download
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Download

346
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
346
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
24
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Conversion
  • eBay Data partioning
  • Transcript

    • 1. Java 2 Enterprise Edition (J2EE) Presented By: Mohamed Mansour [email_address]
    • 2. Notes
      • WebSphere lab
        • Friday (4/21) 1:05-1:55 PM
        • Room 153 CCB
        • www.cc.gatech.edu/~mansour/6210.html
    • 3. Outline
      • Introduction & Motivation
      • Enterprise Applications
      • J2EE Architecture
      • Server Side Components
      • Q&A
    • 4. Enterprise Applications
      • Inter-company integration
      • Intra-company integration
      • Legacy applications
    • 5. Enterprise Applications End-User View eBay.com hotmail.com my.SAP.com
    • 6. Enterprise Applications Intra-Enterprise
    • 7. Enterprise Applications Inter-Enterprise
    • 8. Challenges
      • Interoperability
      • Interface Complexity
      • System Evolution
      • Scalability
      • Reliability
      • Cost
    • 9. Current Solutions
      • Hide complexity in standard application server architectures
        • .NET, J2EE, other…
      • Technology independent interfaces
        • XML and Web Services
    • 10. J2EE Architecture
    • 11. J2EE Web Container Web Container Servlet Object HTTP Request HTTP Response
    • 12. Web Container
      • Process HTTP requests (POST/GET)
      • Route to appropriate servlet object
      • Route HTML reply back to browser
      • Servlets
        • Java classes
        • Server side
      • JSP
        • Embedded script inside HTML files
        • Service Side
    • 13. Web Container Services
      • Session Management
      • Thread Pools
      • Object Life Cycle
    • 14. Three-Tier Arch. Business Layer Presentation Layer
    • 15. EJB Container Services
      • Persistence
      • Transactions
      • Caching
      • Clustering
      • Security
    • 16. EJB Types
      • Entity Beans
        • Persistent objects with primary keys
        • Container Managed Persistence (CMP)
        • Bean Managed Persistence (BMP)
      • Session Beans
        • Stateless
        • Stateful
      • Message Driven Beans (MDB)
    • 17. Worldspan - Airline Reservations Priceline.com Message queue Expedia.com Delta.com clearinghouse Airlines
    • 18. Request Dispatcher Large Scale Deployment
    • 19. EJB Object Interface RMI-IIOP JVM 1 JVM 2 Calling Methods on EJBs Client Server
    • 20. EJB JVM 1 JVM 2 Calling Methods on EJBs Client Server JNDI Home “ ejbs/ejb/MyEjbHome”
      • Lookup the home
      • interface
    • 21. EJB JVM 1 JVM 2 Calling Methods on EJBs contd Client Server JNDI 2. Use Home interface to obtain object interface from server Home Home “ ejbs/ejb/MyEjbHome”
    • 22. EJB JVM 1 JVM 2 Calling Methods on EJBs contd Client Server JNDI 3. Use object interface to invoke server methods Home Home “ ejbs/ejb/MyEjbHome” Object Interface
    • 23. Code Sample InitialContext ic = new InitialContext(); MyBeanHome home = (MyBeanHome) ic.lookup("java:comp/env/ejb/MyBeanHome") MyBean b = (MyBean) home.create(); b.foobar();
    • 24. EJB Home Object Interface Local View Home Object Interface Remote View Direct calls RMI-IIOP JVM 1 JVM 2 Local Interfaces in J2EE 2.0 Server Client
    • 25. EJB ref name: “ myEjbRef ” JNDI name: “ ejbs/ejb/MyEjbHome ” EJB JVM 1 JVM 2 EJB References Client Server JNDI Home “ ejbs/ejb/MyEjbHome” ic.lookup(“myEjbRef”) XML configuration file
    • 26. Using Remote Interfaces Entity Bean Entity Bean Entity Bean Entity Bean Client RMI-IIOP EJB Container
    • 27. Using Remote Interfaces
      • Network overhead for each call
      • Separate transaction for each call
        • Entity beans have inconsistent state
        • Recovery must be performed at client side
        • Extra database statements (even for simple set methods)
    • 28. Using Local Interfaces Session Bean Entity Bean Entity Bean Entity Bean Entity Bean Client RMI-IIOP EJB Container
    • 29. Q&A
    • 30. References
      • http://java.sun.com/products/ejb/
      • http://java.sun.com/products/jdk/rmi/
      • http://wwws.sun.com/software/jini/
      • http://java.sun.com/j2ee/1.4/docs/tutorial/doc/index.html
      • http://www.w3.org/2002/ws/
      • http://www.onjava.com/pub/a/onjava/2004/11/03/localremote.html
    • 31.
      • Multiple applications on same server
      • Statistical multiplexing over different request types
      • Can we provide performance isolation guarantees between different applications?
      Multi-Application Hosting J2EE Server App B App C App D App A App A
    • 32. J2EE Server App C App B Request Dispatcher Multi-Application Hosting J2EE Server App B App C App D App A App A

    ×