Performance and Capacity Experiences with Websphere on z/OS & OS/390 CMG Canada April 24, 2002
Agenda RBC Environment WebSphere Overview Performance Challenges Capacity Challenges Summary Bibliography
RBC Environment 3 production datacentres 1 Development. Over 8500 MIPS. 250 Million transactions weekly. Over 100 major OS/390 Applications. 3 Websphere Applications in Production 12 Websphere Apps in Development. Employ IMS CICS DB2.
WebSphere Overview WebSphere is brand name. WAS is flagship product MQ is now WebSphere MQ. Lots more things to be named WebSphere
Legacy Apps From Glenn Anderson CMG presentation
WAS Infrastructure WTR (trace)
From Glenn Anderson CMG presentation
Dealing with WebSphere Nomenclature HTTP SERVER Comes free with OS. AKA: Web Server, Apache server. In WLM subsystem type is IWEB. Runs static HTML, CGI, Servelets and JSPs. Plugins WAS Version 4.0 (Websphere Application server) Use to be Component Broker. In WLM subsystem type is CB. Got to pay extra for it. Runs EJBs, servelets, JSPs.
Come to Terms with these Server Instance. Server EJBs Servelet JSPs Plugins WAS JVM JDBC IMS Connector Httpd.conf
Performance Challenges
HTTP Performance Data SMF-103 Configuration Performance Interval - Number & type of requests/replies - bytes received/sent - Error counts - Thread/cache/memory - CGI/DNS/SSL/Proxy/Plugin response time
HTTP Performance Data
WAS Performance Data SMF-120 Server Activity – Transactions & Volumes Communication Sessions Container Activity Class section Method section Interval records for Server & Container
WAS Performance Data
MVS Performance Data WLM Report for IWEB & CB Number of transactions Response time Cpu usage Delays Performance Index RMF Type-72 Goal Mode
MVS Performance Data (cont) STC Application Environment usage USS stats TCP/IP stats MQ stats
HTTP Logs Each request is logged Client IP address What URL & page was requested Status returned
Performance Issues Large memory requirements Application Environment is dynamic Performance Tools are limited Interaction with various components SMF/RMF data is limited Performance can be erratic and slow
Performance Tools Websphere Studio App Dev Performance Analyzer Websphere Resource Analyzer Websphere Site Analyzer Websphere Performance Monitoring APIs Stress Testing Tools Web logs & Application logs Real-time Monitors Websphere for Windows/NT evaluation
Factors which affect Performance Web site design Security policies Application design Websphere configuration Development process External issues Operating systems Network
Application Considerations Avoid object serialisation Minimise size and complexity of objects Avoid string concatenation Careful object creation and reuse
Lessons Learned Websphere still evolving Tradeoffs in using existing functions (shorted development) vs “roll your own code” (improved performance) Get performance & capacity analysts involved early Produce guidelines for application developers which deal with performance issues Share experiences & learn from others
Lessons Learned (cont.) JSP (Java Server Pages) = dynamic & more costly than static More complex queries to induce client to perform function (I.e. benefit of doing it online) No permanent connection between user & system (so must have other ways of remembering things)
Capacity Challenges What constitutes a transaction? How much resources to put aside ? Large processor storage needs. How to handle new volatile peaks. What are we measuring?
News you can use WLM settings to check. Application environment set-up HTTP.CONF directives.
1. Policies 2. Workloads 3. Resource Groups 4. Service Classes 5. Classification Groups 6. Classification Rules 7. Report Classes 8. Service Coefficients/Options 9. Application Environments 10. Scheduling Environments WLM Definition Menu
Appl Environment Name.. WEBprod Description Prod web Subsystem type..... IWEB or CB Procedure name..... XXXWEB Start parameters.... IWMSN=&IWMSSNM,IWMAE='WEB_prod',JOBNAME= XXXWEB Limit on starting server address spaces for a subsystem instance: Single address space per system
Workload Selection List CB WAS Application Server CICS CICS regions DB2 DB2 transactions IMS IMS online regions IODRIVER special class for IWEB HTML and Servlet Processing Name Description
Subsystem Type CB - Component Broker via WAS SI BBOASR2A SI BBAASR2A Qualifier type Qualifier name BBOU0001I CB SERIES CONTROL REGION BBOASR2A IS STARTING. From Jes2 Job log
Subsystem Type Selection List for Rules CB Component Broker WAS CICS CICS TRX-level DB2 Use Modify to DDF DB2 DDF Enclaves IWEB WEB Server Test
From Glenn Anderson CMG presentation
Summary Get familiar with the elements Education (CMG, Google, IBM Redbooks) New terminology, but concepts familiar Tools & documentation are somewhat limited Learn how to deal with this Chameleon!
Bibliography Enterprise JavaBeans for z/OS and OS/390 (ibm.com/redbooks) WebSphere Application Server V4.0 for z/OS and OS/390: Installation and Customization MVS planning workload management (sa ) Glenn Anderson CMG presentation.