Presentation is loading. Please wait.

Presentation is loading. Please wait.

PeopleTools Application Server & BEA Tuxedo Internals Go-Faster Consultancy Ltd.

Similar presentations


Presentation on theme: "PeopleTools Application Server & BEA Tuxedo Internals Go-Faster Consultancy Ltd."— Presentation transcript:

1 PeopleTools Application Server & BEA Tuxedo Internals Go-Faster Consultancy Ltd.

2 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Who am I? Independent Consultant Performance Tuning PeopleSoft / Oracle

3 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Rules of Engagement Interrupt me: if you think I have got something wrong if you have a question if you cant hear me

4 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January BEA Tuxedo Historical Overview Tuxedo Internal Architecture PeopleSoft 3-tier client implementation How does PeopleSoft Internet Architecture (PIA) fit in Configuration issues Monitoring

5 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Brief Historical Background In the beginning monolithic Presentation Business Logic Data Access (DBMS)

6 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Client Server ClientServer LAN Presentation Business Logic Data Access (DBMS) SQL Raw Data Two-tier client-server

7 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Tier Client Server GUI + Application Logic Data Access (DBMS) Business Logic ClientServer LAN Request Response 1 st Generation

8 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Tier Client Server Business LogicData Management TUXEDO Servers Presentation Logic TUXEDO Clients Presentation DBMS 1... DBMS n Database Servers Service 1 Service 2... Service n TUXEDO Messaging SQL 2 nd Generation - Tuxedo

9 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Where did Tuxedo come from? Bell Labs Transactions for UniX Extended for Distributed Operations

10 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January What is Tuxedo? It is the knots on the ends of the string!

11 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Presentation Logic Panel Load Panel Save Field Change etc... PeopleSoft 2-Tier Client

12 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PeopleSoft 3-Tier Client Presentation Logic Panel Load Panel Save Field Change etc... Server Side Client Side Tuxedo Client Tuxedo Server

13 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PeopleSoft 2-Tier Client DATABASE Client Connects Directly to the Database 1 database connection per window inactivity timeout

14 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PeopleSoft 2-Tier Client DATABASE Client Connects Directly to the Database 1 database connection per window inactivity timeout What happens in 3-Tier?

15 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PS/Tuxedo Internal Structure DATABASE BBL BB 1st Application Server Process Started Bulletin Board Liaison (BBL) Reads PSTUXCFG configuration file Shared Memory Segment Bulletin Board (BB) PSTUXCFG

16 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PS/Tuxedo Internal Structure DATABASE WSL BBL BB Workstation Listener (WSL) Listens for connection request from clients on a specified port Client initially contacts the WSL

17 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PS/Tuxedo Internal Structure WSL BBL BB Workstation Listener (WSL) Client needs to know where to find the WSL Machine and port specified in Configuration Manager

18 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PS/Tuxedo Internal Structure DATABASE WSLWSH BBL BB Workstation Handler (WSH) handles traffic from client after connection Client is assigned to a port on the WSH WSH port range can be constrained to match a firewall Additional WSH can be spawned if necessary Compress Messages

19 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PS/Tuxedo Internal Structure DATABASE WSLWSH BBL BB PSAUTH AUTHQ PSAPPSRVAPPQPSQCKSRVQCKQPSSAMSRVSAMQPSQRYSRVQRYQPSAPISRVAPIQ

20 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January How does it work? DATABASE WSLWSH BBL BB PSAUTH AUTHQ PSAPPSRVAPPQPSQCKSRVQCKQPSSAMSRVSAMQPSQRYSRVQRYQPSAPISRVAPIQ WSHQ

21 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January How does PIA work? Java Client & PIA use Jolt Java Class Library Jolt Listener maps Java functions to Tuxedo Messages

22 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Jolt Internal Structure DATABASE WSLWSH BBL BB PSAUTH AUTHQ PSAPPSRVAPPQPSQCKSRVQCKQPSSAMSRVSAMQPSQRYSRVQRYQPSAPISRVAPIQ JSL JSH JREPSRV JREPOSITORY JSHQ

23 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Java JVM New structure for PIA (Apache Webserver) HTTPDClient JSLJSH Servlet Engine Servlet Container Servlet Thread Servlet Thread Servlet Thread JSH Cookie Disk (static objects) JSH http 1.1 address+cookie (stateless) Servlet thread IS stateful mod_jserv Sessionid = xy1k…vm8010 Port 8010 Webserver Tuxedo Application Server

24 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January What is the difference between the web servers? Apache Separate Servlet Engine Separate encryption module (Raven) Weblogic Contains an integral servlet container

25 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Progressive Connection Concentration Typical picture 35,000 users 1000 concurrent connections 1000 users active in the last n minutes where n is the Java + JSH timeout therefore need 1000 threads but maybe only 4 JVMs 100 JSH assumes 10 clients per JSH PSAPPSRV processes each PSAPPSRV connects to database 1 database users 1000 connections 4 JVMs 1000 Java Threads 100 JSHs PSAPPSRVs 1 database

26 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January psappsrv.val psappsrv.cfg psappsrv.ubb PSTUXCFG psappsrv.ubx psadmin (configuration dialogue) ubbgen (PS Utility) tmloadcf (tuxedo process) BBL (domain startup) Configuration

27 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Configuration Files psappsrv.cfg contains configurable parameters psappsrv.val validation file for configurable values psappsrv.ubx configuration template for Tuxedo domain psappsrv.ubb configuration file for Tuxedo domain PSTUXCFG compiled configuration file read by BBL at domain startup

28 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January psappsrv.ubx -v- psappsrv.ubb psappsrv.ubx & psappsrv.cfg PeopleSoft file make changes to these files difficult to read psappsrv.ubb Tuxedo file never make changes to this file easier to read this file is compiled by tmloadcf to generate domain configuration file PSTUXCFG variables fully resolved

29 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January psappsrv.ubb Five (or Six) Sections Resources – resource limits -> BB sizing Machine – Resource limits. Environment (Network – Connection between Machines) Groups – Logical Split ( BASE, APPSRV, JREPGRP, JSLGRP) Servers – Number of servers, Command line Services – Timeout, Load, Priority

30 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Application Server Configuration Issue Move quick PSAPPSRV services into a second server (PSQCKSRV) (y/n)? <=PT7.58 this question is misleading – services are additionally advertised on PSQCKSRV as well as PSAPPSRV – so they are advertised on more than one queue >=PT7.59 and PT8.1 – services are de-advertised from PSAPPSRV – quick services not used in PIA, only IC* services – so not a problem

31 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January DATABASE WSLWSH BBL BB PSAPPSRVAPPQPSQCKSRVQCKQ PeopleTools <=7.58 Quick Service

32 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Inside the Bulletin Board PSAPPSRV PSQCKSRV PSAPPSRV Without Load Balancing (default) Table of servers process where each service is advertised Read and populated as a stack WSL looks for first free server where request can be enqueued This can cause problems

33 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PSAPPSRVAPPQPSQCKSRVQCKQ Load Balancing Load Balancing is about choosing the queue upon which to place the message by default all requests have the same load

34 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Load Balancing Trace Add -r to application server command line CLOPT="-r -e APPQ.stderr -A -- -C psappsrv.cfg -D GP81O81 -S PSAPPSRV -r enables trace to file stderr (not channel 2) -e overrides the output filename process trace file with Tuxedo utility txrpt obtain average service time make load proportional to average service time

35 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Load Balancing Trace Output from TXRPT SVCNAME 18p-19p TOTALS Num/Avg Num/Avg SqlRequest 16/ /0.10 MgrClear 5/0.04 5/0.04 RamList 1/0.43 1/0.43 SamGetParmsSvc 1/0.50 1/ TOTALS 23/ /0.12

36 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PSAPPSRVAPPQPSQCKSRVQCKQ Load Balancing load = execution time (seconds) x

37 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Multiple Queues on Busy System You can have many server processes on a single queue BEA recommend no more that 10 server processes per queue If you have queue contention it is likely to impede the WSH/JSH processes enqueuing requests. You are unlikely to observe queuing with PQ. So, if you want more than 10 PSAPPSRV processes you should use two APPQ queues In, which case you should to enable load balancing and you must calculate the load. Less significant with PIA because services different.

38 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January DATABASE WSLWSH BBL BB PSAPPSRVAPPQ1PSAPPSRVAPPQ2 Multiple Queues on Busy System

39 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Multiple Queues on Busy System psadmin will not correctly calculate MAXACCESSERS MAXSERVICES tmadmin->bbs will report maximum number of services – count of all services advertised on each server process and if you have multiple work station listeners MAXWSCLIENTS

40 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January PSQCKSRV QCKQ Service Priority Priority is about queue jumping servers de-queue the request 9 out of 10 de-queued on the basis of priority 1 out 10 is taken from the front of the queue805050

41 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Service Priority All PeopleSoft Services have same priority specified in SERVICES section in psappsrv.ubb therefore there is no queue jumping no reason to believe that it would be advantageous

42 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Tuning Tip Financials On-line journal edit & post - remote call Service initiates a Cobol process Process can take minutes RemoteCall services can block APPQ Move RemoteCall service to a separate queue

43 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January domain on many nodes DATABASE PSAPPSRVAPPQWSLWSH BBL BB TLISTEN BRIDGETLISTEN BRIDGE WSLWSH BBL BB PSAPPSRVAPPQ Multi-Node Domain DBBL

44 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Multi-Node Domain Distinct Bulletin Board Liaison process Master Node TLISTEN process Listens for incoming requests BRIDGE Sends & Receives messages between nodes in a load balancing environment – configurable bridge load add to remote queues – limiting number of messages sent across the bridge

45 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Multi-Node Domain DO ATTEMPT THIS WITHOUT BEA CONSULTANCY At UBS PT 7.5x susceptible to network errors integrated into HP service guard ultimately this was removed from production because of transient network errors between the nodes causing the domain to partition

46 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January So what is going on? tmadmin Tuxedo command line interface also available within psadmin

47 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January tmadmin commands pq - printqueues amount of work queued and waiting not always accurate

48 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January tmadmin commands psr - printservers reports activity of individual server processes

49 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January tmadmin commands psc - printservices each service on each server

50 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January tmadmin commands Lots of other tmadmin commands documented in the Tuxedo documentation Use them to dynamically reconfigure the domain dynamically resize the domain – start/shutdown extra servers monitoring scripts – tmadmin -r for read only mode

51 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Java Administrative Applet

52 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Conclusion So now you know BEA Tuxedo/Jolt is a messaging protocol How the messages are moved around How PeopleSoft has used it How the PIA has been constructed Options for Tuning and Sizing Load Balancing Multi-Node domains Monitoring Scripts BEA Documentation is on your CD

53 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January More Information about PT8 Application Server PeopleSoft 2000 Conference: Americas 8006: PeopleTools 8.1 Application Server 8010: Inside the Application Server – Buzz Voelker – PeopleTools Application Server Team

54 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Final Caveat PeopleSoft will not support any of the changes that I have described in this presentation Everything described in this presentation has been done, in production, at UBS If you want to use a multi-node domain you are strongly recommended to arrange support/consultancy direct from BEA.

55 BEA Tuxedo Internals Go-Faster Consultancy Ltd. 23 January Questions?

56 PeopleTools Application Server & BEA Tuxedo Internals Go-Faster Consultancy Ltd.


Download ppt "PeopleTools Application Server & BEA Tuxedo Internals Go-Faster Consultancy Ltd."

Similar presentations


Ads by Google