17
J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang Supervisor: Professor Jukka Manner Instructor: Pasi Salonen

J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Embed Size (px)

Citation preview

Page 1: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

J2EE Application Server Deployment and Performance Optimization for Enterprise

Application Service

Thesis presentation19.05.2009

Author: Xiaoyang Wang Supervisor: Professor Jukka Manner

Instructor: Pasi Salonen

Page 2: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Content

Background Research aspects Research methods Role of application server in three-tier infrastructure J2EE application server Implementation (Setup) Test cases and optimization Results Conclusion Future research

Page 3: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Background

Conducted by International Business Machines Corp. (IBM) in Helsinki

Topic J2EE application server Deployment setup Performance optimization

Application Server J2EE application server solution Microsoft solution Open source solution

IBM WebSphere Application Server (WAS) is the representative product researched in this thesis.

Page 4: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Research aspects

What is the role of application server in the infrastructure for enterprise application?

How should the application server be deployed and managed?

What affects the performance of the application server?

How should the performance be optimized?

Page 5: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Research methods Literature study

Web-based three-tier architecture Application Server->J2EE application Server->WAS

Implementation: Network structure design Environment setup Test cases

Executed test cases: Single application server

Web container pool size JVM heap size JDBC connection pool size

Integrated environment Comparison between “single” and “integrated”

environment

Page 6: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Role of application server in three-tier infrastructure

Web-based three-tier architecture

Separates applications from the underlying-based mechanism (operating system and database)

Reusability of business logic and components

High Performance (Transaction service, Messaging service, High availability, etc.)

Reliability (Failover, Hot Deployment)

Page 7: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

J2EE application server Java standardization

J2EE services & technologies: JSP and Servlet containers, EJB containers, Java Database Connectivity (JDBC), Java Naming and Directory Interface (JNDI), Java Transaction Service / Java Transaction API (JTS /

JTA), Java Messaging Service (JMS)

Compatibility (cross-platform)

Portability (write once, run anywhere)

Page 8: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Implementation (Setup) 1/3

Front-end servers Caching proxy - IBM Edge components Web server with Plugin- IBM Http Server (IHS)

Middle server J2EE application server - WebSphere Application Server

(WAS) Back-end

LDAP Database – Cloudscape and IBM DB2

Page 9: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Implementation (Setup) 2/3

Cell An administrative domain contains a grouping of nodes

Dmgr AppServer instance for management the cell Administrative onsole

TestNode Nodeagent

bridge between the Dmgr and AppServer instance in the same node

Server1 AppServer instance where application deployed

TestCellTestNode

Dmgr Nodeagent Server1

Page 10: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Implementation (Setup) 3/3 Application ”PlantsByWebSphere”– Sample application built-

in WAS

35 requests 28 ShoppingServlet requests 3 HTML requests 3 AccountServlet requests 1 login JSP request

Page 11: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Test cases and optimization

Scenario 1 – Single application server Web container pool size JVM

Heap size Garbage collection

JDBC connection pool size

Scenario 2 – Integrated environment with other servers Comparison the different performance between two

scenarios.

Successful test requirement Error rate <= 0.11%

Page 12: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Results – Web container pool size

JVM heap size Min = 64 MB Max = 1024 MB

Largest threads =276

Page 13: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Results – JVM heap size

JVM heap size Min = 64 MB Max = 1024 MB

Heap size = 177MB

initialHSmaxHSGCCUsaveRTminRTmaxRT ervalGCintaverageGC

Page 14: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Results – JDBC connection pool size

Default

After optimized

Page 15: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Results – Scenario1 vs. Scenario2

Caching proxy (default) MaxActiveThreads = 100 MaxPersistRequest = 5

HIS (default) MaxClients = 600

Page 16: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Conclusion

The statistics from the test cases meet the purpose of the thesis

Approaches could be referred. However, the optimal value of the parameters are only for the specified case we have in the thesis.

Page 17: J2EE Application Server Deployment and Performance Optimization for Enterprise Application Service Thesis presentation 19.05.2009 Author: Xiaoyang Wang

Future research Optimization for messaging services. The performance tuning between

remote database and application server.

The network topology could be optimized as well.

Improvement on load balance, reliability, security and so on.