1 / 42

SWG Competitive Project Office

SWG Competitive Project Office. Introduction to IBM’s WebSphere Application Server on System z Platform. Trademarks. The following are trademarks of International Business Machines Corporation. ACF/VTAM AD/Cycle ADSM Advanced Function Printing AFP AIX* AIX/ESA AOEXPERT/MVS

Download Presentation

SWG Competitive Project Office

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SWG Competitive Project Office Introduction to IBM’s WebSphere Application Server on System z Platform

  2. Trademarks • The following are trademarks of International Business Machines Corporation. • ACF/VTAM • AD/Cycle • ADSM • Advanced Function Printing • AFP • AIX* • AIX/ESA • AOEXPERT/MVS • Automated Operations Expert/MVS • CICS/ESA • DataHub • DATABASE 2 • DataTrade • DB2* • DFDSM • DFSMS • DFSMS/MVS • DFSMdfp • DFSMSdss • DFSMShsm • DFSMSrmm • Distributed Relational Database • Architecture • DRDA • Enterprise Systems Architecture/370 • Enterprise Systems Architecture/390 • Enterprise System/3090 Enterprise System/4381 Enterprise System/9000 Enterprise Systems Connection Architecture ES/3090 ES/4381 ES/9000 ESA/370 ESA/390 ESCON FASTService* FlowMark Hardware Configuration Definition Hiperbatch Hipersorting* Hiperspace IBM* IBM S/390 Parallel Enterprise Server IBM S/390 Parallel Enterprise Server - Generation 3 IMS/ESA LANRES Micro Channel* MQ Series MVS/DFP MVS/ESA NetView* NQS/MVS OPC Open Blueprint OpenEdition* OSA OSA 1 OSA 2 OS/2* OS/390 OS/400* Parallel Sysplex Power Prestige PR/SM PS/2* Processor Resource/Systems Manager RISC System/6000 S/360 S/370 S/390 SAA SAP R3 Sysplex Timer System/370 System/390 Systems Application Architecture* SystemView VM/ESA VSE/ESA VTAM 3090 Note: Performance is in Internal Throughput Rate (ITR) ratio based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput that any user will experience will vary depending upon considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve throughput improvements equivalent to the performance ratios stated here. Actual performance and environmental costs will vary depending on individual customer configurations and conditions. Note: IBM hardware products are manufactured from new parts, or new and used parts. Regardless, our warranty terms apply. zCPO zClass Introduction to z/OS

  3. What is WebSphere? The list is constantly changing! • It’s not a single product, it’s a Brand, like Tivoli • There are multiple products under the WebSphere Brand. They tend to fall into 5 categories • Development Tools i.e. • RAD - Rational Application Developer (follow-on to VisualAge for Java and WebSphere Studio, including WebSphere Studio Application Developer) • WID - • WebSphere Application Servers i.e. • Base Server – Express • WebSphere Application Server Network Deployment • WebSphere Application Server eXtended Deployment • WebSphere Application Server Extensions these are installed into or on top of the application server i.e. • WebSphere Business Integration Server Foundation now WebSphere Process Server • WebSphere Commerce Suite • WebSphere Portal Server • Integration or Connector Components i.e. • WebSphere MQ • WebSphere Enterprise Service Bus (ESB) • WebSphere Broker • Management and analysis tools i.e. • WebSphere Studio Application Monitor • WebSphere Studio Workload Simulator zCPO zClass Introduction to z/OS

  4. What’s an Application Server? • An Application Server usually supports the following • Common programming model based on a standard • Platform neutral application programming • JAVA based execution model, interpreted, using a JVM • Some Available Application Servers • IBM WebSphere Application Server • BEATM WebLogic • iPLANETTM • Others: Tomcat, JRUN, JSERV etc. A Web server is not an Application Server zCPO zClass Introduction to z/OS

  5. WebSphere Application Server • Runs as a threaded model • Supports a component based architecture • Servlets - Base component that extends a specific Java class HTTP Servlet. All HTTP requests will be initially processed by a Servlet or a JSP. Should contain minimal business logic. Acts as a controller to call EJB's and JSP's • Java Server Pages (JSP's) - The component that is used to dynamically build the data sent back to the requester. This is usually dynamic HTML • Enterprise Java Beans (EJB's) - The component where the business logic and data access is contained. There are three main types of EJB's • Session Beans • Can be stateful or stateless • Entity Beans • Can use container managed persistence (CMP) or bean managed persistence (BMP) • Message Driven Beans • Get and process JMS messages from a queue • These components run in containers. Servlets and JSP's in a Web container and EJB's in an EJB Container zCPO zClass Introduction to z/OS

  6. Extending the Web server • The Application Server was originally thought of as an extension to a Web server, consisting of 2 main components • A plugin for the Web server (HTTP Server) that will pass the request to the actual Application Server. • and • The Application Server itself Some Application Servers have built-in HTTP support HTTP Server Application Server Web server plugin zCPO zClass Introduction to z/OS

  7. HTTP Server plugin • This plugin is usually a .dll or .so file • It is included in the webserver's configuration file as a plugin • It usually has it's own configuration, located in a file or some other location. • It runs just like an API application in the HTTP server, but the vendor you get it from should support any problems. • Performs some very specific functions for the Application Server, as an example • Load balancing across multiple App Servers • Enforcing Server affinity • Routing requests based on URL HTTP Server Application Server Webserver plugin zCPO zClass Introduction to z/OS

  8. Application Server • Usually* runs as a separate process either on the same machine as the web server or on a different machine • Can be one or more processes depending on how it was setup. • Plugin can communicate with the Application Server using several protocols depending on the Application Server vendor • IBM uses HTTP and HTTPS. • Application Server uses a JavaTM environment to run the executables. • Interpretive model. • Needs a Java runtime environment (JRE) or Software Development kit (SDK) • Key element is Java virtual machine (JVM), the interpretive runtime • The Application Server runs components as threads in the Application Server. Machine 2 HTTP Server Application Server Web server plugin Machine 1 *The original Servlet Express and WebSphere Application Server Standard Edition for OS/390 ran in the same address space as the HTTP Server zCPO zClass Introduction to z/OS

  9. Standards • Standards are key to platform neutral code • J2EE ™ (Java 2 Enterprise Edition) is the main standard all Application Servers are measured against • Standard currently supported in WebSphere Application Server • V5 - J2EE 1.3 • V6 - J2EE 1.4 • Components that make up the J2EE standards also have version numbers (just to confuse you) • Servlets • JSP's • EJB's (including Message Driven Beans) • Others, Java Mail, Java Messaging Service etc. • Standards maintained by Sun with many companies contributing zCPO zClass Introduction to z/OS

  10. What's in J2EE • Components • These are Servlets, JSP's and EJB's with other Java classes as helpers and utilities. These are executable. • Containers • This is where the components are executed. There are two types of containers, Web containers (where servlets and JSP's are executed) and EJB containers (where EJB's are executed). A container on z/OS is not an address space. You can have both a Web container and an EJB container in the same server address space. The difference is the services available to the component. • Connectors • These are the adapters a developer uses to get to databases and transactions. They include the CICS Transaction Gateway, IMS Connect, JDBC drivers, and JMS. In the past there were the CCF Connectors (Common Connector Framework) for Servlets. The J2EE standard now includes the J2CA (J2EE Connector Architecture) connectors. zCPO zClass Introduction to z/OS

  11. J2EE Programming Model NOTE: VSAM Connector for z/OS Puts VSAM Data into the WebSphere Picture CICS Transaction Gateway IMS Connect DB2 JDBC … Other Connectors zCPO zClass Introduction to z/OS

  12. Application Servers connect to Data Bases • Directly Accessing Databases using JDBC • Vendor Neutral interface • Requires a JDBC driver • DB2 (Type 2 or Type 4, Local vs. remote) • Oracle • Merant • Access transactions (Local or remote) • J2EE Model • J2EE Connector Architecture Connectors (IMS Connect, CICS Transaction Gateway) now JCA • JMS (Java Message Service) zCPO zClass Introduction to z/OS

  13. Understanding the Transition • The J2EE space is introducing many new acronyms and concepts, but many have parallels to those environments you are used to. • CICS applications have an entry point Usually a (Terminal Owning Region or TOR), 3270 screens (using BMS maps), and services to support file access (File Owning Regions). These modules or components run within CICS Regions that manage the environment. • REXX End User Applications on z/OS normally use ISPF Screens for display and ISPF Dialog Manager to display the screens and to put data into them. They also use EXECIO for file IO and other connectors to do DB2 and CICS. The following foils are meant to provide a bridge in understanding WebSphere. They are not meant to compare the capabilities of CICS or REXX/ISPF to WebSphere zCPO zClass Introduction to z/OS

  14. Traditional CICS Application 3270 • TOR - Terminal Owning Region • AOR - Application Owning Region • App 1- Main Application module • Fn 1- Business Logic Module • Fn 2- Data Access Module • Scr 1- Presentation Screen module BMS mapping AOR TOR Fn 1 App1 Fn 1 Scr 1 VTAM DB2 AOR Fn 1 App1 Fn 1 Scr 1 CICS • TOR Region owns the connection to the 3270 • AOR Region is where the application (transaction) runs, Application is broken up into separate modules and connected using DLP calls, zCPO zClass Introduction to z/OS

  15. WebSphere Application Browser 3270 • Controller • Servant • Servlet • JSP- Java Server Page • EJB • Session • Entity • MDB • TOR - Terminal Owning Region • AOR - Application Owning Region • App 1- Main Application module • Fn 1- Business Logic Module • Fn 2- Data Access Module • Scr 1- Presentation Screen module BMS mapping Servant Controller AOR TOR Fn 1 Servlet EJB App1 Fn 2 EJB JSP Scr 1 TCP/IP DB2 Servant AOR Fn 1 Servlet EJB App1 Fn 2 EJB JSP Scr 1 WebSphere CICS • Controller is the entry point, from Browsers or other Clients • Servant is where the actual application and executables are run • Application is composed of components which use standard J2EE interfaces to communicate zCPO zClass Introduction to z/OS

  16. Analogies with CICS Application • TOR-Terminal Owning Region => WebSphere Controller • This is where WebSphere handles the incoming protocol. This can be: • HTTP/HTTPS - Normal browser traffic, customers are now doing XML over HTTP by having an application simulate a browser • IIOP - For remote EJB execution • JMS Java Message Service - For Message driven beans • AOR-Application Owning Region => WebSphere Servant • CICS Main Application => Java Servlet • Modules for Business Logic or Data Access => EJB • BMS Map => Java Server Page zCPO zClass Introduction to z/OS

  17. J2EE Applications execute in MVS Address Space(s) UNIX SYSTEM SERVICES z/OS Services zCPO zClass Introduction to z/OS

  18. Java Virtual Machine in z/OS zCPO zClass Introduction to z/OS

  19. JVM in z/OS LE zCPO zClass Introduction to z/OS

  20. WebSphere Application Server for z/OS • Optimized for z/OS • That's why it requires RRS, Logger, WLM Goal mode • SMP/E installed with an ISPF dialog for the install customization • Multiple processes (address spaces) • Base Server • Control Region - distributes the work among server regions • Control Region Adjunct • Servant Region - does the actual work, Has 2 types of containers, a Web Container and an EJB Container running in the same address space • Other Daemons for control, including a Server instance for the Deployment Manager • Does not run under the USS Shell but does use some Unix System Services • Configuration is performed with an administrative console (browser based) or script (JACL, Python) zCPO zClass Introduction to z/OS

  21. Basic Operation on z/OS • HTTP Traffic using a Web server on z/OS or another platform • The client Request comes into the HTTP Server and is processed by the WAS Plugin • The WAS Plugin redirects the request to WebSphere using HTTP • A Control Region in WebSphere receives the request and puts the request on a Workload Manager queue • A Servant Region takes the request off the queue and starts the requested Servlet or JSP • The response is passed back through the Web server and to the client • HTTP Traffic using the HTTP Transport • The request comes directly into the Control Region and is placed on the WLM queue and processed exactly like the above HTTP method • The HTTP Transport is not a full Web server and there is usually a full Web server that acts as a proxy to get the request to the HTTP Transport • IIOP Traffic • The client request is usually an RMI (remote Method Invocation) over IIOP to an EJB • The Request comes directly into a Controller and is placed on a WLM queue • A Servant Region takes the request off the queue and starts the EJB requested and the results are returned to the client • JMS Traffic • The client puts a message on a message queue • The Control Region Adjunct (in WAS 6) connected to the message queue places the message on a WLM queue • A Servant Region takes the message off the queue and invokes an MDB EJB. • Results are not necessarily returned to the client zCPO zClass Introduction to z/OS

  22. Basic Runtime Structure on z/OS (5.0 and previous) • The basic execution environment for WebSphere on z/OS is a server. A server is a Controller/Servant configuration. Each is an address space • For every Controller is one or more Servants • The Controller is the protocol entry point. Multiple protocols are supported: HTTP, HTTPS, IIOP and JMS. • The Servant is where the components execute • With a WLM Queue between them • There can be multiple servers on a single z/OS image Server Control Region WLM Queue S E J S E J S E S E J J Servant Region Containers zCPO zClass Introduction to z/OS

  23. Basic Runtime Structure on z/OS (6.0) • The basic execution environment for WebSphere on z/OS is the same, with the addition of a Control Region Adjunct server. • CRJ acts as the listener for MDB’s, moved from the Control Region • Feeds messages to the Servent regions Server Control Region WLM Queue S E J S E J S E S E J Control Region Adjunct J Servant Region Containers zCPO zClass Introduction to z/OS

  24. REQUEST Network Workload Manager S E WLM Queue J S E WAS Servers J CICS IMS DB2 Containers S E S E J Directory Locks Cache J Controller Servants Network services Sysplex services z/OS z/OS Coupling Facility Scaling WebSphere Application Server is fully Sysplex-enabled You can have one or more Controller/Servant configurations setup on each z/OS image in a Sysplex. zCPO zClass Introduction to z/OS

  25. Transaction flows in WAS on z/OS • HTTP Traffic using a Web server on z/OS or another platform • The client Request comes into the HTTP Server and is processed by the WAS Plugin • The WAS Plugin redirects the request to WebSphere using HTTP • A Control Region in WebSphere receives the request and puts the request on a Workload Manager queue • A Servant Region takes the request off the queue and starts the requested Servlet or JSP • The response is passed back through the Web server and to the client • HTTP Traffic using the HTTP Transport • The request comes directly into the Control Region and is placed on the WLM queue and processed exactly like the above HTTP method • The HTTP Transport is not a full Web server and there is usually a full Web server that acts as a proxy to get the request to the HTTP Transport • IIOP Traffic • The client request is usually an RMI (remote Method Invocation) over IIOP to an EJB • The Request comes directly into a Controller and is placed on a WLM queue • A Servant Region takes the request off the queue and starts the EJB requested and the results are returned to the client • JMS Traffic • The client puts a message on a message queue • The Control Region Adjunct (in WAS 6) connected to the message queue places the message on a WLM queue • A Servant Region takes the message off the queue and invokes an MDB EJB. • Results are not necessarily returned to the client zCPO zClass Introduction to z/OS

  26. Security – WAS on z/OS • Traditional security model • You have a userid that is connected to one or more RACF groups • Logon with userid and have access to applications and resources based on userid and group • Batch jobs or subsystems run under Service id’s • WebSphere security model • Control Region runs as key 0, Servant Region runs at Key 8. Servers run under a service id, but requests can be switched to other ids. • Access can be controlled at the level of a component or specific methods within the component • Might have authority to account.getBalance() but not account.makeWithdrawal() • Access is based on Roles • Roles are like RACF groups, each user could be in one or more roles • Principals are like userids • Each request has a “Subject” containing one or more “Principals” • A Principal contains information about caller's identity • Could be non-RACF as well as RACF identity • Works even if end user has no principles • Not the same as an ACEE • ACEE still controls access to non-Java resources (like datasets) zCPO zClass Introduction to z/OS

  27. Depth of Security Options zCPO zClass Introduction to z/OS

  28. WebSphere Application Server for z/OS Organization based on concepts: • Servers • Nodes (and Node Agents): a logical grouping of WebSphere-managed servers • Cells: a grouping of Nodes Within the address spaces, concept of CONTAINER zCPO zClass Introduction to z/OS

  29. Basic Model zCPO zClass Introduction to z/OS

  30. WebSphere Application Server for z/OS • Software Development Kit (SDK) • Interoperates with other subsystems CR = Controller Region SR = Servant Region zCPO zClass Introduction to z/OS

  31. What is a “Standalone” Server zCPO zClass Introduction to z/OS

  32. WebSphere Base Application Server zCPO zClass Introduction to z/OS

  33. Administering a Base Application Server zCPO zClass Introduction to z/OS

  34. Address Space Relationships zCPO zClass Introduction to z/OS

  35. HFS under the Base Application Server Node zCPO zClass Introduction to z/OS

  36. Small, Separate Environments zCPO zClass Introduction to z/OS

  37. zCPO zClass Introduction to z/OS

  38. zCPO zClass Introduction to z/OS

  39. WAS Cluster Load Balancing Sysplex Distributor zCPO zClass Introduction to z/OS

  40. Cluster WAS w/LPAR Cluster & Sysplex zCPO zClass Introduction to z/OS

  41. Don’t Forget the zAAP! zCPO zClass Introduction to z/OS

  42. Thanks! The End

More Related