PSoft3-TierArchitecture_From_www-csupomona-edu

PSoft3-TierArchitecture_From_www-csupomona-edu PSoft3-TierArchitecture_From_www-csupomona-edu

sharepoint.cabq.gov
from sharepoint.cabq.gov More from this publisher
20.07.2014 Views

PeopleSoft 3-Tier Architecture Troy McKaskle Kent Nickels PeopleSoft Professional Services Presentation Review ! 3-Tier Basics ! The Players ! Configuration Basics ! Tools Evolution ! Configuration / Sizing ! Top Questions Asked ! The Servers ! Communication ! PeopleCode ! Commands ! Cache Issues ! TUXEDO WebGUI ! The Guts ! Seeing Traces ! New Technology 1

PeopleSoft 3-Tier Architecture<br />

Troy McKaskle Kent Nickels<br />

PeopleSoft Professional Services<br />

Presentation Review<br />

! 3-Tier Basics<br />

! The Players<br />

! Configuration Basics<br />

! Tools Evolution<br />

! Configuration / Sizing<br />

! Top Questions Asked<br />

! The Servers<br />

! Communication<br />

! PeopleCode<br />

! Commands<br />

! Cache Issues<br />

! TUXEDO WebGUI<br />

! The Guts<br />

! Seeing Traces<br />

! New Technology<br />

1


Nomenclature<br />

! BEA Systems - Maker of TUXEDO application<br />

! middleware - plumbing that connects two sides of<br />

an application and passes data between them<br />

! Application Server - Logical implementation of<br />

TUXEDO processes containing 1+ domains<br />

! application server - physical piece of hardware<br />

! TUXEDO domain - collection of TUXEDO<br />

process working against a single PeopleSoft<br />

database<br />

! Web Server - daemon process serving http<br />

requests<br />

Nomenclature<br />

! Logical 3-Tier - Application Server and database<br />

engine on same physical machine<br />

! Physical 3-Tier - Application Server and database<br />

engine on separate physical machines<br />

! LAN - Local Area Network - networked computers<br />

spanning a relatively small area<br />

! WAN - Wide Area Network geographically<br />

separate, interconnected LANs<br />

! TUXEDO Server - One of many TUXEDO<br />

processes which collectively make a TUXEDO<br />

Domain<br />

! TUXEDO Message (message) - TUXEDO data<br />

passed between two communicating processes<br />

2


File Server Vs. Application Server<br />

! File Server - contains PeopleSoft client<br />

executable files. File servers should be as close<br />

to the clients as possible.<br />

! Application Server - runs PeopleSoft business<br />

logic on the client’s behalf. Application Servers<br />

should be as close to the database server as<br />

possible.<br />

! Terminal Server - high tech remote control.<br />

Should be as close to the database / application<br />

server as possible.<br />

TUXEDO Application Directories<br />

$TUXDIR<br />

bin<br />

Tuxedo Executables<br />

apps<br />

Sample applications<br />

cobinclude<br />

copylib entries for COBOL<br />

include<br />

C language header files<br />

locale<br />

subdirectories to support the<br />

localization of system messages<br />

doc<br />

Tuxedo documentation<br />

(optional)<br />

lib<br />

compiled object files<br />

(dynamic shared libraries)<br />

udataobj<br />

Misc. required files<br />

En_US<br />

message catalogs<br />

(An alias for SCO C)<br />

C<br />

Mask<br />

Data Entry System initial mask.<br />

vuform<br />

data entry masks used by vuform<br />

3


PeopleSoft Application Directories<br />

$PS_HOME<br />

bin<br />

PeopleSoft Executables<br />

PSAPPSRV, PSQCKSRV Etc.<br />

Process sch<strong>edu</strong>lers < V7.x<br />

cblbin<br />

compiled COBOL<br />

(Used for remote call)<br />

api<br />

API libraries<br />

appserv<br />

prcs<br />

process sch<strong>edu</strong>ler<br />

(Version 7.5x only)<br />

<br />

configuration files<br />

LOGS<br />

Log and trace files<br />

CACHE<br />

1, 2...<br />

Cache files written to disk<br />

(A directory for each PSAPPSERV process)<br />

(7.5x only)<br />

Architecture Overview<br />

❖<br />

Two - Tier Application Access<br />

❖ Client Application<br />

❖ Database Logic and Processing<br />

4


Architecture Overview<br />

❖<br />

Three - Tier Application Access<br />

❖ Client Application<br />

❖ Application Server Middleware (BEA TUXEDO)<br />

❖ Database Logic and Processing<br />

2 &3 Tier Processing Models<br />

SQL<br />

Database Server<br />

Two-Tier<br />

Build<br />

Edit<br />

Client<br />

Save<br />

Application Server<br />

Database Server<br />

Three-Tier<br />

Client<br />

Request/<br />

Reply<br />

Build<br />

Edit<br />

Save<br />

SQL<br />

5


PeopleTools Evolution ( v1 - v5 )<br />

BATCH SERVER<br />

Batch<br />

Processing<br />

Option<br />

FILE<br />

SERVER<br />

WINDOWS<br />

CLIENT<br />

Graphical<br />

Application<br />

User Interface<br />

SQL<br />

DATABASE<br />

SERVER<br />

Relational<br />

Database<br />

Business Objects<br />

• Rules Batch (code)<br />

• Processing Data<br />

PeopleTools Evolution ( v6 )<br />

FILE<br />

SERVER<br />

WINDOWS<br />

CLIENT<br />

TUXEDO<br />

messages<br />

APPLICATION<br />

SERVER<br />

for<br />

Remote Call<br />

SQL<br />

DATABASE<br />

SERVER<br />

6


PeopleTools Evolution ( v7 )<br />

WEB CLIENT<br />

FILE<br />

SERVER<br />

WINDOWS<br />

CLIENT<br />

Java-Based<br />

Interface<br />

APPLICATION<br />

SERVER<br />

for<br />

Scalable<br />

On-Line<br />

Application<br />

Processing<br />

DATABASE<br />

SERVER<br />

PS Architecture Details<br />

FILE<br />

SERVER<br />

DATABASE<br />

SERVER<br />

WINDOWS<br />

CLIENT<br />

7


PS Architecture Details: 2-Tier<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

FILE<br />

FILE<br />

SERVER<br />

SERVER<br />

PS FILES<br />

SQL comms<br />

RDBMS<br />

WINDOWS<br />

WINDOWS<br />

CLIENT<br />

CLIENT<br />

Win Client<br />

3rd<br />

party<br />

GUI,etc<br />

Message<br />

Agent<br />

Query<br />

nVision<br />

SQL comms<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

PTPUPRCS<br />

COBOL, SQR, ...<br />

PS Architecture Details: 2-Tier<br />

FILE<br />

FILE<br />

SERVER<br />

SERVER<br />

PS FILES<br />

WINDOWS CLIENT<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

3rd<br />

party<br />

GUI,etc<br />

PS Windows Client<br />

Message<br />

Agent ?<br />

Query<br />

nVision<br />

SQL comms<br />

SQL comms<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

PTPUPRCS<br />

RDBMS<br />

COBOL, SQR, ...<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

8


PS Architecture Details: 2-Tier<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

FILE<br />

FILE<br />

SERVER<br />

SERVER<br />

PS FILES<br />

SQL comms<br />

RDBMS<br />

WINDOWS<br />

WINDOWS<br />

CLIENT<br />

CLIENT<br />

Win Client<br />

3rd<br />

party<br />

GUI,etc<br />

Message<br />

Agent<br />

Query<br />

nVision<br />

SQL comms<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

PTPUPRCS<br />

COBOL, SQR, ...<br />

PS Architecture Details: 2-Tier<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

FILE<br />

FILE<br />

SERVER<br />

SERVER<br />

PS FILES<br />

SQL comms<br />

RDBMS<br />

WINDOWS<br />

WINDOWS<br />

CLIENT<br />

CLIENT<br />

Win Client<br />

3rd<br />

party<br />

GUI,etc<br />

Message<br />

Agent<br />

Query<br />

nVision<br />

SQL comms<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

PTPUPRCS<br />

COBOL, SQR, ...<br />

9


PS Architecture Details: 2-Tier<br />

DATABASE SERVER<br />

SQL comms<br />

RDBMS<br />

FILE<br />

FILE<br />

SERVER<br />

SERVER<br />

WINDOWS<br />

WINDOWS<br />

CLIENT<br />

CLIENT<br />

Win Client<br />

3rd<br />

party<br />

GUI,etc<br />

PS FILES<br />

Message<br />

Agent<br />

Query<br />

nVision<br />

SQL comms<br />

Process Sch<strong>edu</strong>ler<br />

Server<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

COBOL, SQR , ...<br />

Details: Enter Application Server<br />

APPLICATION<br />

SERVER<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

FILE<br />

FILE<br />

SERVER<br />

SERVER<br />

PS FILES<br />

?<br />

SQL comms<br />

RDBMS<br />

WINDOWS<br />

WINDOWS<br />

CLIENT<br />

CLIENT<br />

Win Client<br />

3rd<br />

party<br />

GUI,etc<br />

Message<br />

Agent<br />

Query<br />

nVision<br />

SQL comms<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

“Process<br />

Server Sch<strong>edu</strong>ler Agent”<br />

PTPUPRCS Server<br />

COBOL, SQR, ...<br />

10


What’s Going On In There ?<br />

TUXEDO<br />

processes<br />

Server<br />

processes<br />

BBL<br />

PSAUTH<br />

Win Client<br />

WSL<br />

WSH<br />

PSAPPSRV<br />

RDBMS<br />

PSQCKSRV<br />

PSSAMSRV<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

What’s Really Going On In There ?<br />

TUXEDO<br />

processes<br />

Service Request<br />

Queues<br />

Server<br />

processes<br />

BBL<br />

PSAUTH<br />

PSAPPSRV<br />

Win Client<br />

Win Client<br />

Win Client<br />

Win Client<br />

WSL<br />

WSH<br />

WSH<br />

APPQ<br />

QCKQ<br />

PSAPPSRV<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQCKSRV<br />

PSQCKSRV<br />

RDBMS<br />

Win Client<br />

SAMQ<br />

PSSAMSRV<br />

PSSAMSRV<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

11


What’s an App Server “Domain” ?<br />

APPLICATION<br />

APPLICATION<br />

SERVER<br />

SERVER<br />

Domain 1<br />

APPLICATION<br />

APPLICATION<br />

SERVER<br />

SERVER<br />

Domain 2<br />

Domain 3<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQCKSRV<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSAPPSRV<br />

WSL<br />

BBL<br />

PSSAMSRV<br />

PSSAMSRV<br />

PSAUTH<br />

WSL<br />

BBL<br />

PSSAMSRV<br />

PSAUTH<br />

WSL<br />

BBL<br />

PSSAMSRV<br />

PSAUTH<br />

WSH<br />

WSH<br />

WSH<br />

PeopleSoft<br />

BEA TUXEDO<br />

RDBMS Other HW<br />

Details: 3-Tier Windows Client<br />

PSAPPSRV<br />

PSQCKSRV<br />

WSL<br />

BBL<br />

PSSAMSRV<br />

PSAUTH<br />

WSH<br />

PeopleSoft<br />

BEA TUXEDO<br />

RDBMS Other HW<br />

12


Details: 3-Tier Windows Client<br />

APPLICATION<br />

APPLICATION<br />

SERVER<br />

SERVER<br />

PSAPPSRV<br />

PSQCKSRV<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

FILE<br />

FILE<br />

SERVER<br />

SERVER<br />

PS FILES<br />

WSL<br />

BBL<br />

PSSAMSRV<br />

PSAUTH<br />

SQL comms<br />

SQL comms<br />

RDBMS<br />

WINDOWS<br />

WINDOWS<br />

CLIENT<br />

CLIENT<br />

Win Client<br />

3rd<br />

party<br />

GUI,etc<br />

Message<br />

Agent<br />

Query<br />

nVision<br />

Network API<br />

TUXEDO<br />

comms<br />

SQL comms<br />

WSH<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

COBOL, SQR, ...<br />

Details: 3-Tier Web Client<br />

APPLICATION<br />

APPLICATION<br />

SERVER<br />

SERVER<br />

WEB CLIENT<br />

Browser<br />

Java VM<br />

PS<br />

HTML<br />

applets<br />

TUXEDO<br />

JSL<br />

JSH<br />

Web server<br />

BBL<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSSAMSRV<br />

SQL comms<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

SQL comms<br />

RDBMS<br />

PSAUTH<br />

WSL<br />

WSH<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

COBOL, SQR, ...<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

13


Details: 3-Tier Web Client<br />

APPLICATION<br />

APPLICATION<br />

SERVER<br />

SERVER<br />

WEB<br />

WEB<br />

CLIENT<br />

CLIENT<br />

Browser<br />

Java VM<br />

HTML<br />

PS<br />

applets<br />

TUXEDO<br />

JSL<br />

JSH<br />

Web<br />

server<br />

BBL<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSSAMSRV<br />

SQL comms<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

SQL comms<br />

RDBMS<br />

PSAUTH<br />

WSL<br />

WSH<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

COBOL, SQR, ...<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

Details: 3-Tier Web Client<br />

WEB<br />

WEB<br />

CLIENT<br />

CLIENT<br />

Browser<br />

Java VM<br />

HTML<br />

PS<br />

applets<br />

TUXEDO<br />

WEB<br />

WEB<br />

SERVER<br />

SERVER<br />

JRLY<br />

?<br />

Web server<br />

APPLICATION<br />

APPLICATION<br />

SERVER<br />

SERVER<br />

JRAD<br />

Enter<br />

Jolt Relay<br />

FIREWALL<br />

JSL<br />

JSH<br />

PSAPPSRV<br />

PSQCKSRV<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

BBL<br />

PSSAMSRV<br />

SQL comms<br />

SQL comms<br />

RDBMS<br />

PSAUTH<br />

WSL<br />

WSH<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

COBOL, SQR, ...<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

14


Details: Connect Options<br />

Options<br />

Remote Call<br />

still there<br />

WEB<br />

WEB<br />

CLIENT<br />

CLIENT<br />

Browser<br />

Java VM<br />

HTML<br />

PS<br />

applets<br />

FILE<br />

FILE<br />

SERVER<br />

SERVER<br />

PS<br />

PS<br />

FILES<br />

FILES<br />

TUXEDO<br />

WEB<br />

WEB<br />

CLIENT<br />

CLIENT<br />

Browser<br />

Java VM<br />

PS<br />

HTML<br />

applets<br />

TUXEDO<br />

WEB SERVER<br />

JRLY<br />

Web server<br />

FIREWALL<br />

Jolt Web<br />

OR<br />

Client<br />

Jolt Relay<br />

APPLICATION<br />

APPLICATION<br />

SERVER<br />

SERVER<br />

JRAD<br />

JSL<br />

JSH<br />

Web<br />

server<br />

BBL<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSSAMSRV<br />

PSAUTH<br />

COBOL<br />

for Remote Call<br />

SQL comms<br />

BATCH<br />

BATCH<br />

SERVER<br />

SERVER<br />

Process Sch<strong>edu</strong>ler<br />

SQL comms<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

SQL comms<br />

COBOL ...<br />

Batch Server<br />

still there<br />

RDBMS<br />

WINDOWS<br />

WINDOWS<br />

CLIENT<br />

CLIENT<br />

PS Winclient<br />

3rd<br />

party<br />

GUI,etc<br />

Message<br />

Agent<br />

Message<br />

Agent<br />

Query<br />

nVision<br />

Network API<br />

TUXEDO<br />

comms<br />

SQL comms<br />

2-Tier<br />

AND / OR<br />

3-Tier<br />

WSL<br />

WSH<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

COBOL, SQR, ...<br />

Changes for PS 7.5<br />

Changes<br />

WEB<br />

WEB<br />

CLIENT<br />

CLIENT<br />

Browser<br />

Java VM<br />

PS<br />

HTML<br />

applets<br />

FILE<br />

FILE<br />

SERVER<br />

SERVER<br />

PS FILES<br />

TUXEDO<br />

WEB<br />

WEB<br />

CLIENT<br />

CLIENT<br />

Browser<br />

Java VM<br />

PS<br />

HTML<br />

applets<br />

TUXEDO<br />

WEB SERVER<br />

JRLY<br />

Web server<br />

FIREWALL<br />

OPTIONAL:<br />

Database sign-on<br />

validation<br />

APPLICATION<br />

APPLICATION<br />

SERVER<br />

SERVER<br />

JRAD<br />

JSL<br />

JSH<br />

Web<br />

server<br />

WSL<br />

BBL<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSSAMSRV<br />

PSAUTH<br />

OPTIONAL:<br />

Dynamic Spawning<br />

of processes<br />

Disk<br />

Cache<br />

Files<br />

SQL comms<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

SQL comms<br />

OPTIONAL:<br />

APPSRV cache<br />

written to disk<br />

Disk<br />

Cache<br />

Files<br />

Database RDBMS<br />

Re-Connect<br />

WINDOWS<br />

WINDOWS<br />

CLIENT<br />

CLIENT<br />

PS Winclient<br />

3rd<br />

party<br />

GUI,etc<br />

Message<br />

Agent<br />

Query<br />

nVision<br />

Network API<br />

TUXEDO<br />

comms<br />

SQL comms<br />

NOW:<br />

Message Agent<br />

requires 3-tier<br />

WSH<br />

PSAPISRV<br />

Message Agent<br />

( PSAPISRV )<br />

on app server<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

COBOL, SQR, ...<br />

15


PeopleSoft 3-Tier “Big Picture”<br />

WEB<br />

WEB<br />

CLIENT<br />

CLIENT<br />

Browser<br />

Java VM<br />

HTML<br />

PS<br />

applets<br />

FILE<br />

FILE<br />

SERVER<br />

SERVER<br />

PS FILES<br />

TUXEDO<br />

WEB<br />

WEB<br />

CLIENT<br />

CLIENT<br />

Browser<br />

Java VM<br />

PS<br />

HTML<br />

applets<br />

TUXEDO<br />

WEB SERVER<br />

JRLY<br />

Web server<br />

FIREWALL<br />

APPLICATION<br />

APPLICATION<br />

SERVER<br />

SERVER<br />

JRAD<br />

JSL<br />

JSH<br />

Web<br />

server<br />

BBL<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSSAMSRV<br />

PSAUTH<br />

COBOL<br />

for Remote Call<br />

Disk<br />

Cache<br />

Files<br />

SQL comms<br />

BATCH<br />

BATCH<br />

SERVER<br />

SERVER<br />

Process Sch<strong>edu</strong>ler<br />

Server<br />

SQL comms<br />

DATABASE<br />

DATABASE<br />

SERVER<br />

SERVER<br />

SQL comms<br />

COBOL, SQR, ...<br />

RDBMS<br />

WSL<br />

WINDOWS<br />

WINDOWS<br />

CLIENT<br />

CLIENT<br />

PS Winclient<br />

3rd<br />

party<br />

GUI,etc<br />

Message<br />

Agent<br />

Query<br />

nVision<br />

Network API<br />

Assumes ubiquitous TCP/IP<br />

TUXEDO<br />

comms<br />

SQL comms<br />

PSAPISRV<br />

WSH<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

Process<br />

Sch<strong>edu</strong>ler<br />

Server<br />

COBOL, SQR, ...<br />

2 Vs. 3 Tier Client Access<br />

❖<br />

Clients can connect 2 Tier directly to the database<br />

! Increased database overhead<br />

! Extra database connectivity software to manage<br />

! Need to configure client email for workflow<br />

! Not as efficient over slow network links:<br />

! Large numbers of small packets<br />

! Network latency<br />

! Propagation delays<br />

! Decentralized management (db2cli.ini, tnsnames.ora,<br />

etc.)<br />

16


2 Vs. 3 Tier Client Access<br />

❖<br />

Clients can connect 3 Tier directly to TUXEDO<br />

! R<strong>edu</strong>ced client management<br />

! No SQL Connectivity needed<br />

! No email configuration required to use workflow (SMTP)<br />

! Scalability<br />

! R<strong>edu</strong>ced system resources<br />

! Low bandwidth access to PeopleSoft<br />

! Clients cannot run processes requiring direct database<br />

access (SQR, COBOL, etc.)<br />

2 or 3 Tier client COBOL and SQR<br />

" Client COBOL and SQR<br />

! These require a direct database connect (2 Tier)<br />

! Can be used from a three tier client if needed - database<br />

connectivity software must be installed and configured<br />

! Makes the client “fatter” to administer<br />

! Not available to Web Client<br />

3-Tier client<br />

TUXEDO Messages<br />

Application Server<br />

Client COBOL<br />

Client SQR<br />

SQL<br />

RDBMS<br />

17


Process Sch<strong>edu</strong>ler and 3-tier<br />

! Sch<strong>edu</strong>ler and Application Server are independent<br />

processes<br />

! Process Sch<strong>edu</strong>ler typically resides on DB Server or<br />

stand-alone Batch Server<br />

RDBMS<br />

3-Tier client<br />

Application Server<br />

TUXEDO Messages<br />

SQL<br />

Process Sch<strong>edu</strong>ler<br />

Optimal Configuration<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

Dedicated Servers - File, Database, Application<br />

Disable unneeded Services or daemons<br />

Planned Disk Layout<br />

Allocate Kernel Resources in advance<br />

Dedicated, high speed connectivity to DB server<br />

Inter-process communications to DB<br />

Load balanced<br />

❖ Multiple Domains / Same DB instance<br />

❖ Multiple Network Adapters on DB machine<br />

R<strong>edu</strong>ndant / available<br />

Not always realistic / what exists onsite<br />

18


Optimal Configuration<br />

SQL<br />

Client and File Server<br />

should be on same LAN<br />

TUXEDO<br />

Application Server<br />

Local-Area Network<br />

Database Server<br />

Local-Area Network<br />

Client<br />

Local or Wide-Area<br />

Network<br />

Application Server and Database<br />

should be on the same machine or<br />

at least on the same LAN.<br />

File Server<br />

PeopleTools Evolution to Release 7.0<br />

" Same architecture since the beginning<br />

! Data and metadata stored in relational DB<br />

! Graphical user interface<br />

! Server batch processing<br />

" PT6 added Application Server for Remote Call<br />

! Enables use of larger machine<br />

! Closer to DB<br />

" PT7 expanded Application Server for OLTP<br />

! Improved scalability of on-line architecture<br />

! Web-based clients<br />

19


PeopleTools Evolution -- Release 7.5<br />

" 7.5 -- Enhanced Application Server<br />

! Disk caching ( PSAPPSRV )<br />

! DB authentication ( PSAUTH )<br />

! Message Agent ( PSAPISRV )<br />

! Process spawning<br />

! DB reconnect<br />

! PSADMIN controls Process Sch<strong>edu</strong>ler<br />

…evolution -- Release 7.52<br />

" 7.52 -- New Features for Application Server:<br />

! Multiple PSAUTH processes<br />

! PSNTSRV - NT service to start:<br />

! Application Server Domains<br />

! Process Sch<strong>edu</strong>ler Servers<br />

20


evolution… What’s New?<br />

" NT service to start Process Sch<strong>edu</strong>ler<br />

! PT 6.12<br />

! PT 7.04<br />

" SQLMON - user ID visible from RDBMS<br />

! 7.53 Oracle ( V$SESSION table )<br />

! 7.54 DB2/390 ( from OMEGAMON, etc )<br />

" HTML Access Framework<br />

! 7.53 - JMAC / 7.54 HMTL Access<br />

" Web Delivery of Windows client<br />

! 7.55 All platforms<br />

Application Server Domain<br />

Application Server<br />

User Log In<br />

PSAUTH<br />

JRAD<br />

JSL<br />

Panel Save<br />

PSAPPSRV<br />

Client Messages<br />

TUXEDO Messages<br />

Populate ListBox<br />

PSQCKSRV<br />

WSL<br />

Update data<br />

PSSAMSRV<br />

Every Server is a Client<br />

(User) on the Database<br />

21


Application Server Sizing<br />

Application Server<br />

User Log In<br />

PSAUTH<br />

JRAD<br />

JSL<br />

Panel Save<br />

PSAPPSRV<br />

Populate ListBox<br />

PSQCKSRV<br />

WSL<br />

Update data<br />

PSSAMSRV<br />

Multiple Client Requests<br />

are placed in a Queue<br />

Every Server is a Client<br />

(User) on the Database<br />

Application Server Sizing<br />

Application Server<br />

PSAUTH<br />

Panel Save<br />

Panel Save<br />

JRAD<br />

JSL<br />

PSAPPSRV<br />

PSAPPSRV<br />

Panel Save<br />

PSAPPSRV<br />

PSQCKSRV<br />

WSL<br />

PSSAMSRV<br />

Enough instances of PSAPPSRV<br />

exist to handle client requests<br />

simultaneously.<br />

Every Server is a Client<br />

(User) on the Database<br />

22


Application Server Sizing FAQ<br />

" How many application server machines<br />

do I need?<br />

! Dependent on …<br />

! Total user population<br />

! Total number of expected CONCURRENT<br />

connections (not connected users)<br />

! Development environment<br />

! How databases will be used during the<br />

implementation<br />

! Number of TUXEDO Domains to be configured<br />

for Load Balancing and Failover<br />

! Bottom line.. dependent on customer<br />

environment!<br />

Application Server<br />

Configuration Model Defaults<br />

PSAUTH PSAPPSRV PSQCKSRV PSSAMSRV<br />

SMALL 1 1 1 1<br />

MED 1 3 4 1<br />

LARGE 1 5 7 1<br />

USER POPULATION<br />

SMALL 10’s (~ 100 concurrent users)<br />

MED 100 (~ 200 concurrent users)<br />

LARGE 100’s ( 200 + concurrent users)<br />

Models are used as a starting point for quick configuration.<br />

23


Application Server Sizing FAQ<br />

" How do I know when to start more instances of a<br />

particular Application Server / Process?<br />

! add another database connection to handle more<br />

incoming client requests simultaneously<br />

! monitor with TUXEDO command “psr” to display<br />

number of requests per server process and “pq” to<br />

display number of clients in queue<br />

" How do I start another Server / Process?<br />

! modifying the psappsrv.cfg using PSADMIN<br />

! set MIN>1 and increase MAX if needed<br />

! rule of thumb => 1 Server/Process per 20TPM<br />

Application Server Sizing Scenario<br />

" What is the ratio of client connections to DB<br />

connections?<br />

! 1 User issues 1 transaction per 5minutes<br />

! 100 transactions / 5 min = 20TPM<br />

! 100 transactions = 500 concurrent Users<br />

! Start 1 PSAPPSRV/1PSQCKSRV per 20TPM<br />

! 20TPM = 1 PSAPPSRV/ 1PSQCKSRV started<br />

! equates to 100 concurrent Users using 2 database<br />

connects for PSAPPSRV & PSQCKSRV<br />

! Remember to ....Allow .65mb per Connected User<br />

24


Application Server Sizing Scenario<br />

" What is the ratio of client connections to DB<br />

connections?<br />

! 200 Concurrent Users = 40TPM = min 4db<br />

connects<br />

! 200trans/5min = 40TPM<br />

! 40TPM/20TPM = 2PSAPPSRV/2PSQCKSRV started<br />

! PSADMIN Sizing Model MEDIUM supports this configuration<br />

! 500 Concurrent Users = 100TPM = min 10db<br />

connects<br />

! 500trans/5min = 100TPM<br />

! 100TPM/20TPM = 5 PSAPPSRV/5PSQCKSRV started<br />

! PSADMIN Sizing Model LARGE supports this configuration<br />

! 1000 Concurrent Users = 100TPM = min 20db<br />

connects<br />

! 1000trans/5min = 200TPM<br />

! 200TPM/20TPM =<br />

Application Server Sizing<br />

Scenario of 1000 ‘concurrent’ Users<br />

(i.e.Total User Population 10,000+)<br />

SQL<br />

Clients<br />

TUXEDO<br />

messages<br />

Planned for 1000<br />

Concurrent Users<br />

Application Server<br />

Minimum 23 DB<br />

connects for<br />

Servers/Processes<br />

Database Server<br />

! Use Large Model for 1000+ total User Population<br />

to start with …then modify ...<br />

! configure for 200TPM = 1000 Concurrent Users<br />

! start 10 PSAPPSRV / 11 PSQCKSRV<br />

! total 23 database connections (min.)<br />

25


Question and Answer<br />

Top TUXEDO Questions Asked<br />

! Which is faster, Logical or Physical 3 Tier?<br />

! Will 3 Tier make access from the LAN faster?<br />

! How can I see who is connected / Who is<br />

running that job?<br />

! How can I monitor Application Server activity?<br />

! How much memory is required for NNN users?<br />

! Can I run multiple versions of TUXEDO on my<br />

server?<br />

! How do I allow my ____ clients to connect<br />

through the firewall?<br />

! How do I diagnose problems?<br />

! How do I configure for XXX users?<br />

26


Top TUXEDO Questions Asked<br />

" Which is faster: Logical or Physical 3 Tier?<br />

! Depends on hardware configuration<br />

! Logical three tier on a loaded machine will<br />

yield poor performance<br />

! Physical three tier using a loaded or slow<br />

network segment will yield poor performance<br />

! Multiple, smaller servers scale easier<br />

! Multiple servers add administrative overhead<br />

Three Tier Configuration<br />

" Logical Three - Tier<br />

! Significant r<strong>edu</strong>ction of network traffic<br />

! Shared memory connection to<br />

database<br />

! High - speed hardware backplane<br />

! Hardware savings<br />

! Manageability<br />

27


Three Tier Configuration<br />

" Physical Three - Tier<br />

! R<strong>edu</strong>ced DB system load<br />

! Hardware Diversity<br />

! Platform Availability<br />

! Support for known systems<br />

! R<strong>edu</strong>ndancy<br />

! Scalability<br />

Top TUXEDO Questions Asked<br />

" Does 3 Tier improve LAN access?<br />

! Cache files on application server improve<br />

initial object caching<br />

! R<strong>edu</strong>ced administrative overhead<br />

! R<strong>edu</strong>ced LAN traffic may help if network<br />

is overloaded<br />

! Performance gains negligible<br />

for LAN users<br />

! Primarily benefits WAN users<br />

28


Top TUXEDO Questions Asked<br />

" Who is connected / running that job?<br />

! tmadmin shows currently connected users<br />

! For Oracle / PeopleTools 7.53 query<br />

V$SESSIONS<br />

! For DB/2 / PeopleTools 7.54 use<br />

Omegamon / BMC / Platinum, etc.<br />

Top TUXEDO Questions Asked<br />

" How can I monitor app server activity?<br />

! tmadmin shows active users, servers and<br />

services<br />

! Third party applications<br />

! Foglight<br />

! BMC<br />

! Computer Associates<br />

! Others<br />

! PeopleSoft offered tools<br />

! tuxmon / ASM<br />

29


Top TUXEDO Questions Asked<br />

" How much memory is required...?<br />

! Memory requirements depend on the<br />

number of server instances started<br />

! Shared memory footprint increases with<br />

the number of servers / “accessers”<br />

! PSAPPSRV server memory usage<br />

increases (to a finite number)<br />

Top TUXEDO Questions Asked<br />

" Can I run multiple versions of TUXEDO<br />

on my server?<br />

! On Unix systems you must keep<br />

environment variables separate<br />

! Replace everything with current $PS_HOME<br />

& $TUXDIR to new environment variable<br />

! Not supported on Windows NT<br />

! Registry settings only support one<br />

version of TUXEDO at a time<br />

30


Top TUXEDO Questions Asked<br />

" How do I access PS through a firewall?<br />

! Windows Clients<br />

! Web Client / Web Server and Application<br />

Server separate<br />

Top TUXEDO Questions Asked<br />

" Windows Clients:<br />

Port 7000<br />

WSL<br />

Port 6001<br />

Port 1215<br />

WSH<br />

Incoming connection<br />

Outgoing connection<br />

31


Top TUXEDO Questions Asked<br />

" Windows Clients:<br />

WSL - Port 7000<br />

WSH a<br />

WSH b<br />

Incoming connection<br />

Outgoing connection<br />

Top TUXEDO Questions Asked<br />

" Windows Clients<br />

! Workstation Listener port is defined using<br />

psadmin<br />

! Workstation Handler ports can be<br />

restricted by editing psappsrv.ubx and<br />

adding -p and -P switches to specify start<br />

and end of port range<br />

! Firewalls that use Network Address<br />

Translation (NAT) must also use the -H<br />

switch on the WSL to allow connections<br />

through the firewall<br />

32


Top TUXEDO Questions Asked<br />

" Web Clients:<br />

Port 9100<br />

JRAD<br />

Jolt Relay<br />

(JRLY)<br />

JSH<br />

Top TUXEDO Questions Asked<br />

" Web Clients:<br />

! Use JRAD / JRLY to provide access<br />

through the firewall<br />

! Single port to open up in the firewall<br />

! Web server should be outside the firewall<br />

! Application Server should be INSIDE the<br />

firewall<br />

33


Top TUXEDO Questions Asked<br />

" How do I diagnose problems?<br />

! Log files<br />

! tuxlog.mmddyy<br />

! appsrv.log<br />

! syslog / Event Viewer<br />

! Client trace<br />

! Server trace<br />

! Other system monitoring<br />

! resource utilization<br />

! network problems<br />

! Check Customer Connection for updates<br />

Top TUXEDO Questions Asked<br />

" How do configure for XXX users?<br />

! Concurrent users not a good measure<br />

! Configure WSL / WSHs for maximum<br />

anticipated number of connections<br />

! MaxClientsPerHandler*Max Instances of<br />

WSHs should be high enough for users<br />

! Configure number of servers based on<br />

empirical data<br />

! Watch for queuing<br />

! Transaction-based - not all transactions place<br />

the same load on the system.<br />

34


TUXEDO-defined Servers<br />

" A TUXEDO Domain Can Contain<br />

! BBL<br />

! WSL<br />

! WSH<br />

! JSL<br />

! JSH<br />

! JREPSVR<br />

! JRLY<br />

! JRAD<br />

! Others<br />

WSL<br />

WSH<br />

JRLY<br />

JRAD<br />

BBL<br />

JSL<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

TUXEDO-defined Servers<br />

" BBL - Bulletin Board<br />

Liaison<br />

! Manage system processes<br />

! Restart dead or failed<br />

servers<br />

! Manage client processes<br />

! Manage system queues<br />

WSL<br />

WSH<br />

JRLY<br />

JRAD<br />

BBL<br />

JSL<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

35


TUXEDO-defined Servers<br />

" WSL - Workstation<br />

Listener<br />

! Connects Windows<br />

clients to WSH<br />

processes<br />

! Listens on<br />

administrator-defined<br />

TCP/IP port<br />

! Quick server - 1<br />

instance should do<br />

WSL<br />

WSH<br />

JRLY<br />

JRAD<br />

BBL<br />

JSL<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

TUXEDO-defined Servers<br />

" WSH - Workstation Handler<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

Services client requests to<br />

TUXEDO<br />

Minimum / Maximum number<br />

started is configurable using<br />

PSADMIN<br />

Multiplexes clients and client<br />

requests<br />

Clients are connected to<br />

random WSH ports assigned<br />

by operating system<br />

Handlers not “load balanced”<br />

Support compression<br />

JRLY<br />

JRAD<br />

BBL<br />

WSL<br />

JSL<br />

WSH<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

36


TUXEDO Compression<br />

" When do I use WSH Compression?<br />

! Default set to 5000<br />

! All messages larger than 5000 bytes will be<br />

compressed<br />

! Trade off between network times and time<br />

needed to compress / uncompress the data<br />

! If network latency is high, match compression<br />

and TCP/IP MTU for the network segment<br />

! Determine benefits of using compression by<br />

using “ping -l packetsize”<br />

TUXEDO-defined Servers<br />

" JSL - JOLT Server Listener<br />

❖<br />

❖<br />

❖<br />

Connects Web clients to Jolt<br />

Server Handler<br />

Listens on administratordefined<br />

TCP/IP port<br />

❖ Example: Port=9000<br />

❖ JSL port defines starting<br />

point of port range for<br />

JSH processes<br />

Quick server - 1 instance<br />

should do<br />

JRLY<br />

JRAD<br />

BBL<br />

WSL<br />

JSL<br />

WSH<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

37


TUXEDO-defined Servers<br />

" JSH - JOLT Server<br />

Handler<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

Same principal as WSH, but<br />

for Web clients<br />

Handlers not “load<br />

balanced”<br />

Supports encryption<br />

Does not yet support<br />

compression<br />

Clients are connected to<br />

ports in order: 9001,9002,...<br />

WSL<br />

WSH<br />

JRLY<br />

JRAD<br />

BBL<br />

JSL<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

TUXEDO-defined Servers<br />

" JREPSVR - JOLT<br />

Repository Server<br />

❖<br />

❖<br />

❖<br />

❖<br />

Contains definitions for all<br />

JOLT Services<br />

Jolt Repository downloaded<br />

to Java VM upon<br />

connection<br />

Web client requests based<br />

on JREPSVR definitions<br />

Central database for client<br />

request definitions<br />

JRLY<br />

JRAD<br />

BBL<br />

WSL<br />

JSL<br />

WSH<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

38


TUXEDO-defined Servers<br />

" Jolt Relay (JRLY)<br />

❖<br />

❖<br />

Allows Web client requests<br />

to be routed to an<br />

Application Server - (Java<br />

Security issue)<br />

Listens on a defined port on<br />

Web server<br />

" Jolt Relay Adapter (JRAD)<br />

❖<br />

❖<br />

Listens on a defined port on<br />

application server<br />

Accepts connections from a<br />

single JRLY - 1:1<br />

WSL<br />

WSH<br />

JRLY<br />

JRAD<br />

BBL<br />

JSL<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

TUXEDO-defined Servers<br />

" JRLY and JRAD are not TUXEDO clients or<br />

servers - they are stand-alone programs<br />

❖<br />

❖<br />

Do not offer or advertise TUXEDO services<br />

Connect clients to appropriate servers<br />

" Each pair (JRLY/JRAD) can handle multiple<br />

concurrent clients for a single domain<br />

39


PeopleSoft-defined Servers<br />

" PSAUTH<br />

" PSAPPSRV<br />

" PSQCKSRV<br />

" PSQRYSRV<br />

" PSSAMSRV<br />

" PSAPISRV<br />

WSL<br />

WSH<br />

BBL<br />

JRLY<br />

JRAD<br />

JSL<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

PeopleSoft-defined Servers<br />

" PSAUTH<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

Validates User Access<br />

against PSOPRDEFN Table<br />

Additional option to validate<br />

against database<br />

“Validate Signon with<br />

Database” 7.52 / 7.02 (7.03)<br />

Supports Min / Max instances<br />

Does not yet automatically<br />

spawn additional processes<br />

Use TUXEDO command line<br />

(tmadmin) to start additional<br />

instances<br />

JRLY<br />

JRAD<br />

BBL<br />

WSL<br />

JSL<br />

WSH<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

40


PeopleSoft-defined Servers<br />

" PSAPPSRV<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

Caches panel objects and logic in<br />

memory<br />

Writes cached objects to disk in<br />

Tools 7.5<br />

Executes Panel Builds, Panel<br />

Saves, and PeopleCode services<br />

Runs Remote Call COBOL<br />

Supports spawning additional<br />

processes<br />

WSL<br />

WSH<br />

JRLY<br />

JRAD<br />

BBL<br />

JSL<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

PeopleSoft-defined Servers<br />

" PSQCKSRV<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

Subset of PSAPPSRV functions<br />

Performs Read-Only SQL<br />

requests<br />

Performs no caching - no need<br />

PSQCKSRV most often invoked<br />

server<br />

Supports spawning additional<br />

processes<br />

WSL<br />

WSH<br />

JRLY<br />

JRAD<br />

BBL<br />

JSL<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

41


PeopleSoft-defined Servers<br />

" PSQRYSRV<br />

❖ New in PeopleTools 7.54<br />

❖ Subset of PSAPPSRV functions<br />

❖ Performs SQL requests<br />

generated from PSQUERY -<br />

SqlQuery:SqlRequest service<br />

❖ Performs no caching - no need<br />

❖ PSQRYSRV can be started to<br />

prevent queries from blocking<br />

PSQCKSRV processes<br />

❖ Supports spawning additional<br />

processes<br />

❖ Uses Service Timeout like other<br />

servers<br />

WSL<br />

WSH<br />

JRLY<br />

JRAD<br />

BBL<br />

JSL<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

PeopleSoft-defined Servers<br />

" PSSAMSRV<br />

❖<br />

❖<br />

❖<br />

❖<br />

❖<br />

Conversational (Synchronous)<br />

server<br />

SqlAccess TUXEDO service<br />

Used infrequently<br />

Performs transactional SQL<br />

requests (Updates)<br />

Automatically spawns additional<br />

processes by definition -<br />

TUXEDO automatically spawns<br />

servers for Conversational<br />

Servers<br />

JRLY<br />

JRAD<br />

BBL<br />

WSL<br />

JSL<br />

WSH<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

42


PeopleSoft-defined Servers<br />

" PSAPISRV<br />

❖ Runs MsgAPI Service<br />

❖ Supports Min / Max parameters<br />

for multiple PSAPISRV instances<br />

❖ Supports spawning additional<br />

processes<br />

❖ Increased stability / availability<br />

❖ Message Agent only runs in 3-<br />

Tier for Tools 7.5<br />

❖ Single-threaded program -<br />

different than 7.0 Message Agent<br />

❖ Sends workflow e-mail via SMTP<br />

server<br />

WSL<br />

WSH<br />

JRLY<br />

JRAD<br />

BBL<br />

JSL<br />

JSH<br />

JREPSVR<br />

PSAUTH<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQRYSRV<br />

PSSAMSRV<br />

PSAPISRV<br />

PeopleSoft-defined Servers<br />

" PSAPISRV<br />

❖ PeopleSoft Message Agent API<br />

❖ Message Agent Requires Application Server<br />

API<br />

Web-based Form<br />

subselect.me<br />

Personnel Action Form<br />

Name<br />

Action<br />

API<br />

Message<br />

Agent<br />

Application<br />

Processor<br />

subselect.me<br />

PeopleSoft<br />

Application<br />

and<br />

Workflow<br />

Database<br />

Manager<br />

Electronic Form<br />

PeopleSoft<br />

Panel Group<br />

API<br />

PeopleTools Message<br />

Agent and Application<br />

Processor<br />

Information<br />

Kiosk<br />

43


What’s Going On In There ?<br />

TUXEDO<br />

processes<br />

Server<br />

processes<br />

BBL<br />

PSAUTH<br />

Win Client<br />

WSL<br />

WSH<br />

PSAPPSRV<br />

RDBMS<br />

PSQCKSRV<br />

PSSAMSRV<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

What’s Really Going On In There ?<br />

TUXEDO<br />

processes<br />

Service Request<br />

Queues<br />

Server<br />

processes<br />

BBL<br />

PSAUTH<br />

PSAPPSRV<br />

Win Client<br />

Win Client<br />

Win Client<br />

Win Client<br />

WSL<br />

WSH<br />

WSH<br />

APPQ<br />

QCKQ<br />

PSAPPSRV<br />

PSAPPSRV<br />

PSQCKSRV<br />

PSQCKSRV<br />

PSQCKSRV<br />

RDBMS<br />

Win Client<br />

SAMQ<br />

PSSAMSRV<br />

PSSAMSRV<br />

PeopleSoft BEA TUXEDO<br />

RDBMS Other HW<br />

44


Question and Answer<br />

TUXEDO Transaction Processing<br />

" Request / Response Communication<br />

model<br />

" Communication is analogous to sending /<br />

receiving mail<br />

" Stateless communication<br />

Response:<br />

5<br />

Request:<br />

How many widgets?<br />

Basic Request/Response Communication<br />

45


TUXEDO Communication Types<br />

" Request / Response<br />

" Identical to mail order catalog model:<br />

! Pick item from catalog<br />

! Fill out order form<br />

! Send payment<br />

! Post request<br />

! Await delivery<br />

TUXEDO Transaction Processing<br />

" Includes conversational server types<br />

" Communication is analogous to a telephone conversation<br />

" Stateful communication<br />

Server<br />

Basic Conversational Communication<br />

5 Red<br />

15 Blue No Here you go.<br />

How many Widgets can I have?<br />

5 Red. Any More? 15 Blue. Any more? Let me have them.<br />

Client<br />

46


TUXEDO Communication Types<br />

" Conversational Communication<br />

" Analogous to telephone conversations<br />

! Place telephone call to specific party<br />

! Exchange greeting<br />

! Discuss requirements<br />

! Conversational dependency<br />

! Await response<br />

! Maintain state<br />

! No “Call Waiting”<br />

3-Tier Execution Locations<br />

" Processing Groups<br />

! Panel Build<br />

! Panel Save<br />

! FieldChange PeopleCode<br />

! SaveEdit PeopleCode<br />

" Processing Groups run as a whole<br />

" All others run on the client<br />

47


3-Tier Execution Locations<br />

" Panel Group Build Events<br />

! FieldDefault<br />

! FieldFormula<br />

! RowInit<br />

! RowSelect<br />

! RowInsert<br />

! RowDelete<br />

" By Default all Build Events happen<br />

on the Application Server<br />

3-Tier Execution Locations<br />

" Panel Group Save Events<br />

" After SaveEdit PeopleCode runs:<br />

! SavePreChange<br />

! WorkFlow<br />

! SavePostChange<br />

! Database Updates<br />

" By Default all Panel Group Save<br />

Events execute on the Application<br />

Server<br />

48


3-Tier Execution Locations<br />

! For PprLoad & PprSave,<br />

you can specify<br />

execution on client or<br />

application server<br />

! Open Panel Group using<br />

Application Designer<br />

! File, Object Properties<br />

! Click Use tab<br />

! Be sure to test<br />

! Application Server (with<br />

Edits) radio button is<br />

new to Tools 7.53<br />

3-Tier Execution Locations<br />

" FieldChange Events<br />

! After FieldEdit PeopleCode runs<br />

! After System Validations<br />

! FieldEdit does single field validation<br />

! FieldChange handles dependencies<br />

and recalculation of related values<br />

" By Default all FieldChange Events<br />

happen on the client<br />

49


3-Tier Execution Locations<br />

! For FieldChange and<br />

SaveEdit PeopleCode<br />

types<br />

! Use Application Server<br />

for PeopleCode<br />

programs with 4+ SQL<br />

Statements<br />

3-Tier Execution Locations<br />

" FieldChange Recommendations:<br />

! Small programs run on client:<br />

! Graying or hiding fields<br />

! Simple calculations<br />

! Large programs run on server<br />

! Client-only PeopleCode cannot be run<br />

on the Application Server<br />

! For a list see “Client Only PeopleCode”<br />

! Use 3 Tier Validation in App Designer<br />

50


More on 3-Tier Execution Locations<br />

! If Save (with edits) is<br />

selected, client does not<br />

run any SaveEdit<br />

PeopleCode except:<br />

! Run Location properties<br />

for SaveEdit<br />

PeopleCode override<br />

Panel Group Save<br />

! Server runs SaveEdit<br />

PeopleCode for all fields<br />

! Required field checks<br />

are still done on client<br />

More on 3-Tier Execution Locations<br />

! If Default is selected,<br />

client runs SaveEdit<br />

PeopleCode<br />

! Client runs SaveEdit not<br />

marked to run on server<br />

! Server runs SaveEdit for<br />

fields marked to run on<br />

server<br />

! Required field checks<br />

are still done on client<br />

51


More on 3-Tier Execution Locations<br />

" Run Location Table for SaveEdit<br />

SaveEdit<br />

Location<br />

Panel Group Location<br />

Client, default, server Server with edits<br />

Client Runs on client Runs on client<br />

Server Runs on server Runs on server<br />

Default Runs on client Runs on server<br />

Question and Answer<br />

52


TUXEDO Command Line<br />

" Character - based utility<br />

" Decentralized<br />

management interface<br />

TUXEDO Command Line<br />

" psr: printserver<br />

" psc: print service<br />

" pclt: print client<br />

" pq: print queue<br />

53


TUXEDO Command Line<br />

" psr: printserver<br />

! Display server statistics on a per server basis<br />

! Load Done displays which servers are<br />

working the most - How do your users work?<br />

! Current Service will display the services that<br />

are currently running<br />

TUXEDO Command Line<br />

" psr: printserver<br />

54


TUXEDO Command Line<br />

" psc: print service<br />

! Lists all services defined to the Application<br />

Server<br />

! Lists number of times each service has been<br />

accessed<br />

! Displays information about what services users<br />

are accessing most.<br />

! Output used to size server processes<br />

accordingly, i.e. adding or r<strong>edu</strong>cing the number<br />

and type of active server processes<br />

TUXEDO Command Line<br />

" psc: print service<br />

55


TUXEDO Command Line<br />

" pclt: print client<br />

! Prints information about users accessing the<br />

Application Server<br />

! Which client computers are accessing the<br />

application<br />

! Client status is also obtained with this<br />

command – Busy, Wait, etc..<br />

TUXEDO Command Line<br />

" pclt: print client<br />

56


TUXEDO Command Line<br />

" pq: print queue<br />

! Prints information about requests that are<br />

currently in queue<br />

! Useful for sizing the number of servers<br />

(psappsrv, pssamsrv, psqcksrv) that are<br />

needed for current environment<br />

TUXEDO Command Line<br />

" pq: print queue<br />

57


TUXEDO Command Line - Filtering<br />

" Command switches to filter output<br />

! help command at command line<br />

! Always use SITE1 as machine name<br />

! Filter on groups or queues<br />

! Save filters in command history<br />

TUXEDO Command Line - Filtering<br />

" Filtering psr output<br />

> psr -g APPSRV -q QCKQ<br />

Prog Name Queue Name Grp Name ID RqDone Load Done Current Service<br />

--------- ---------- -------- -- ------ --------- ---------------<br />

PSQCKSRV.exe QCKQ APPSRV 50 0 0 ( IDLE )<br />

PSQCKSRV.exe QCKQ APPSRV 51 0 0 ( IDLE )<br />

PSQCKSRV.exe QCKQ APPSRV 52 0 0 ( IDLE )<br />

PSQCKSRV.exe QCKQ APPSRV 53 0 0 ( IDLE )<br />

58


TUXEDO Command Line - Filtering<br />

" Filtering psc output<br />

> help psc<br />

printservice (psc) [-m machine] [-g groupname] [-i srvid] [-q qaddress]<br />

[-s service] [-a {0|1|2}]<br />

---------------------------------------------------------------------------<br />

Print information for the specified service.<br />

. . .<br />

> psc -g APPSRV -q APPQ -s PprLoad<br />

Service Name Routine Name Prog Name Grp Name ID Machine # Done Status<br />

------------ ------------ --------- -------- -- ------- ------ ------<br />

PprLoad PprLoad PSAPPSRV.+ APPSRV 2 SITE1 14 AVAIL<br />

PprLoad PprLoad PSAPPSRV.+ APPSRV 1 SITE1 0 AVAIL<br />

TUXEDO Command Line - Filtering<br />

" Using Verbose command<br />

> psr -g APPSRV -i 1<br />

Group ID: APPSRV, Server ID: 1<br />

Machine ID: SITE1<br />

Process ID: 313, Request Qaddr: 9, Reply Qaddr: 10<br />

Server Type: USER<br />

Prog Name: D:\HR75\bin\server\winx86\PSAPPSRV.exe<br />

Queue Name: APPQ<br />

Options: RESTARTABLE<br />

Max # Restarts: 3<br />

Grace Period: 0 hour 1 mins<br />

Generation: 1, Max message type: 1073741824<br />

Creation time: 02/24/99 08:42:40 PM<br />

Up time: 0:18:54<br />

Requests done: 0<br />

Load done: 0<br />

Current Status: ( IDLE )<br />

59


TUXEDO Command Line - boot<br />

" Booting additional server instances<br />

! Get existing server information first:<br />

> psr –g APPSRV –q APPQ<br />

Prog Name Queue Name Grp Name ID RqDone Load Done Current Service<br />

--------- ---------- -------- -- ------ --------- ---------------<br />

PSAPPSRV.exe APPQ APPSRV 1 35 1750 ( IDLE )<br />

PSAPPSRV.exe APPQ APPSRV 2 29 1450 ( IDLE )<br />

> boot -g APPSRV -i 3<br />

INFO: TUXEDO(r) System Release 6.4<br />

INFO: Serial #: 1000000044, Expiration NONE, Maxusers 1000000<br />

INFO: Licensed to: PeopleSoft<br />

Booting server processes ...<br />

exec PSAPPSRV -p 1,600:1,1 -r -e apprpt.txt -A -- -C psappsrv.cfg -D OGRE -S<br />

PSAPPSRV :<br />

process id=120 ... Started.<br />

1 process started.<br />

TUXEDO Command Line - shutdown<br />

" Shutting down specific server instances<br />

! Get existing server information first:<br />

> psr –g APPSRV –q APPQ<br />

Prog Name Queue Name Grp Name ID RqDone Load Done Current Service<br />

--------- ---------- -------- -- ------ --------- ---------------<br />

PSAPPSRV.exe APPQ APPSRV 1 9 1750 ( IDLE )<br />

PSAPPSRV.exe APPQ APPSRV 2 0 1450 ( IDLE )<br />

PSAPPSRV.exe APPQ APPSRV 3 0 0 ( IDLE )<br />

> shutdown -g APPSRV -i 3<br />

> shutdown -g APPSRV -i 3<br />

Shutting down server processes ...<br />

Server Id = 3 Group Id = APPSRV Machine = SITE1:<br />

shutdown succeeded<br />

1 process stopped.<br />

60


Question and Answer<br />

PeopleSoft Cache Performance<br />

" “Seeding” the cache<br />

! Pre-caching objects makes them<br />

available for users<br />

! R<strong>edu</strong>ces trips from application server to<br />

the database<br />

! R<strong>edu</strong>ces network communication<br />

! Version numbers are checked<br />

61


PeopleSoft Cache Performance<br />

" What is cached?<br />

! Record Definitions<br />

! Menu Definitions<br />

! PeopleCode Definitions<br />

! PeopleCode References<br />

! Panel Definitions<br />

! Other stuff<br />

PeopleSoft Cache Performance<br />

" How do I automate caching?<br />

! SQA Robot scripts<br />

! Use Application Designer<br />

! Insert objects into project<br />

! Add all relevant Panel Groups<br />

! Perform 3 Tier validation<br />

! This loads (caches) all panel<br />

objects<br />

! Each server has its own<br />

cache<br />

62


PeopleSoft Cache Performance<br />

" What about the other PSAPPSRVs?<br />

! For Tools 7.5x ONLY:<br />

! Use tmadmin to shut down all PSAPPSRVs<br />

except one<br />

! Perform caching using one of the described<br />

methods<br />

! Shut down last PSAPPSRV<br />

! Copy cache files to other<br />

directories<br />

! Restart all servers<br />

PeopleSoft Cache Performance<br />

" What about the other PSAPPSRVs?<br />

! For Tools 7.0x:<br />

! Perform caching using one of the described<br />

methods<br />

! Run SQA scripts concurrently<br />

! For large implementations with multiple<br />

servers, this is more difficult<br />

to accomplish<br />

! Avoid rebooting domains<br />

! Stay current with Tools<br />

releases and patches<br />

63


PeopleSoft Cache Performance<br />

" Who has the cache?<br />

! \CACHE\1, \CACHE\2… directories<br />

may be used by different servers<br />

! Who is using it?<br />

! Check file dates / sizes<br />

! Once the correct instance is identified,<br />

copy it to the other directories<br />

! Why does it work like that?<br />

Do I Need an Application Server?<br />

" Some Business Processes require an<br />

application server<br />

" Web access to PeopleSoft<br />

" Large numbers of local users<br />

" Lower operating costs<br />

" Performance issues for remote users<br />

" Wide Area Network bandwidth<br />

consumption<br />

64


When is 3 Tier Required?<br />

!Proc<strong>edu</strong>res Requiring 3-Tier Access:<br />

❖Message Agent<br />

❖Budgets Explorer<br />

❖MS Project 98 and PeopleSoft<br />

Projects Interface<br />

❖Inbound Notes forms<br />

❖Web Access<br />

❖Database Agent Workflow<br />

❖3rd Party programs, Net Dynamics,<br />

Seeker, etc.<br />

❖SMTP Mail<br />

Setting up the WebGUI<br />

BEA TUXEDO WebGUI 101<br />

65


Requirements<br />

" TUXEDO installation<br />

" Java 1.02 compliant<br />

browser<br />

" No security restrictions<br />

preventing access to Java<br />

applets<br />

" Web Server virtual<br />

directories / sym. links<br />

Setup WebGUI - Tools 7.5<br />

- - - - - - - - - - - - - - - - - - - - - - - - -<br />

PeopleSoft Server Administration<br />

- - - - - - - - - - - - - - - - - - - - - - - - -<br />

1) Application Server<br />

2) Process Sch<strong>edu</strong>ler<br />

3) Web Components<br />

4) Service Setup<br />

q) Quit<br />

Command to execute (1-4, q): 3<br />

66


Setup WebGUI - Tools 7.5<br />

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -<br />

PeopleSoft Web Components Administration<br />

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -<br />

1) Web Server Administration<br />

2) TUXEDO Web Monitoring Facility Administration<br />

3) PeopleSoft starter page Administration<br />

4) Generate Web Components configuration files<br />

q) Quit<br />

Command to execute (1-4, q): 4<br />

Setup WebGUI - Tools 7.5<br />

Generating web server configuration file...<br />

Loading validation table...<br />

Do you want to change any config values (y/n)? [n]:y<br />

Values for config section - WebServer<br />

ServerName=%PS_MACH%<br />

Port=80<br />

PSSite=SampleSite<br />

Do you want to change any values (y/n)? [n]:<br />

Configuration file successfully created.<br />

67


Setup WebGUI - Tools 7.5<br />

Generating PeopleSoft starter web page...<br />

Configuration file successfully created.<br />

Generating PeopleSoft application server administration web page...<br />

Loading validation table...<br />

Do you want to change any config values (y/n)? [n]:n<br />

Values for config section - AdminWebPage<br />

ServerName=PeopleSoft Application Server<br />

Do you want to change any values (y/n)? [n]:<br />

Configuration file successfully created.<br />

Start WebGUI - Tools 7.5<br />

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -<br />

PeopleSoft Web Components Administration<br />

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -<br />

1) Web Server Administration<br />

2) TUXEDO Web Monitoring Facility Administration<br />

3) PeopleSoft starter page Administration<br />

4) Generate Web Components configuration files<br />

q) Quit<br />

Command to execute (1-4, q): 2<br />

68


Start WebGUI - Tools 7.5<br />

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -<br />

PeopleSoft TUXEDO Web Monitoring Facility Administration<br />

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -<br />

1) Start TUXEDO Web Monitor wlisten process<br />

2) Edit pswebgui.ini<br />

q) Quit<br />

Command to execute (1-2, q) [q]: 1<br />

Checking for required files...<br />

Starting TUXEDO WebGUI listener process (wlisten)...<br />

Starting... D:\TUXEDO\bin\wlisten -i pswebgui.ini<br />

Web Server Setup Needed<br />

Virtual Directory<br />

Actual path on the application server<br />

/APPSERV<br />

/CGI-BIN<br />

/DOC<br />

/JAVA<br />

/WEBMON<br />

%PS_HOME%\appserv<br />

%TUXDIR%\udataobj\webgui\cgi-bin<br />

%TUXDIR%\doc<br />

%TUXDIR%\udataobj\webgui\java<br />

%PS_HOME%\appserv\webmon<br />

/ This is the web server’s root directory.<br />

Sometimes referred to as docbase,<br />

<strong>www</strong>root, etc. Depends on flavor of web<br />

server. Virtual directories are relative to this<br />

point in a browser<br />

69


Troubleshooting WebGUI<br />

! Domain does not need to be booted first<br />

! Is wlisten started? Verify using:<br />

! Unix: netstat -na | grep 4003<br />

! NT: netstat -na | findstr 4003<br />

! Is the Web server configured correctly?<br />

! Is the browser Java 1.02 compatible?<br />

Troubleshooting WebGUI<br />

" Administrative password:<br />

! Stored in $TUXDIR/udataobj/tlisten.pw<br />

! Stored in clear text<br />

! Username parameter is ignored<br />

70


Loading WebGUI Tool<br />

! Web Server must be properly configured first<br />

! Point browser to http://yourhost/webmon/index.html<br />

! Click on PeopleSoft Application Server Administration<br />

! Click on<br />

! Enter password as defined at setup<br />

! May need to maximize / restore window to display menu:<br />

! Click Domain to select your domain<br />

WebGUI - Introduction<br />

71


WebGUI - Logged on users<br />

Monitoring and Tracing<br />

! Tracing generates additional load on the<br />

system<br />

! Consider creating dedicated “Trace” Domains<br />

! Configure production clients to allow access<br />

to tracing domain in advance.<br />

! Boot as needed<br />

72


Tracing Client Access<br />

PSAPPSRV.CFG Settings:<br />

Configuration Manager:<br />

; Bit Type of tracing<br />

; --- ---------------<br />

; 1 - SQL statements<br />

; 2 - SQL statement variables<br />

; 4 - SQL connect, disconnect, commit and rollback<br />

; 8 - Row Fetch (indicates that it occurred, not data)<br />

; 16 - All other API calls except ssb<br />

; 32 - Set Select Buffers (identifies the attributes of<br />

; columns to be selected).<br />

; 64 - Database API specific calls<br />

; 128 - COBOL statement timings<br />

; 256 - Sybase Bind information<br />

; 512 - Sybase Fetch information<br />

; 4096 - Manager information<br />

; 8192 - Message Agent information<br />

TraceSql=0<br />

TraceSqlMask=12319<br />

Tracing Client Access<br />

PSAPPSRV.CFG Settings: Configuration Manager:<br />

; Bit Type of tracing<br />

; --- ---------------<br />

; 1 - Trace entire program<br />

; 2 - List the program<br />

; 4 - Show assignments to variables<br />

; 8 - Show fetched values<br />

; 16 - Show stack<br />

; 64 - Trace start of programs<br />

; 128 - Trace external function calls<br />

; 256 - Trace internal function calls<br />

; 512 - Show parameter values<br />

; 1024 - Show function return value<br />

; 2048 - Trace each statement in program<br />

TracePC=0<br />

TracePCMask=0<br />

73


Tracing Client Access<br />

! Remote COBOL Redirect<br />

! Maintains all COBOL output files on application server<br />

! Network Services - Client Side Trace<br />

! SQL Statement Timings / Elapsed Time:<br />

1-1 GetCertificate : sendlen=41, retlen=51, elapsed time=0.0900<br />

1-2 0.140 SamGetParmsSvc : sendlen=124, retlen=53, elapsed time=0.0600<br />

1-3 0.551 SqlRequest SamGetDataBaseParam tran=1: sendlen=159,<br />

retlen=40, elapsed time=0.0600<br />

1-4 0.150 SqlRequest SamCompileNow tran=1 stmt=SELECT OWNERID,<br />

TOOLSREL, LASTREFRESHDTTM, LASTCHANGEDTTM,<br />

SECURITY_OPTION FROM …...<br />

Configuration/Log files<br />

" PSAPPSRV.cfg: Application Server Instance<br />

(Domain) configuration parameters / values.<br />

! If values are modified manually, you will need to regenerate<br />

PSTUXCFG file and reboot Domain (using PSADMIN)<br />

" APPSRV.LOG: Contains status messages from<br />

application server code (Servers/Processes)<br />

" TUXLOG.mmdddyy: Contains status msgs from<br />

TUXEDO. New file created each day.<br />

74


Configuration/Log Files - more detail ...<br />

" TUXEDO Log<br />

! Automatic Logging (Always ON)<br />

– IPC/Semaphore/Shared Memory Issues<br />

– TUXEDO Events (Server Initiation)<br />

– Client Timeouts<br />

" APPSRV.LOG<br />

! Automatic Logging (Always ON)<br />

! Types of Errors<br />

– Database Signon / Invalid AccessId<br />

– PeopleTools Release Mismatch<br />

– Status of PS Application Servers/Process<br />

– Authentication Failure<br />

SQL Tracing Tools<br />

" TraceSQL and TracePC<br />

! ALL SQL for ALL Clients / All PC for ALL Clients<br />

" TraceSQLMask and TracePCMask<br />

! ALL SQL for SPECIFIC Client(s) and All PC for SPECIFIC<br />

Client(s)<br />

! File name uses Operator Name/Operator’s<br />

machine<br />

75


Network Services Trace on Client<br />

" Traces client requests to Application Server<br />

" Set by<br />

! PeopleSoft Configuration Manager,<br />

Trace, Network Services<br />

" Writes to user-definable file on CLIENT<br />

c:\temp\network.trc<br />

Tracing FAQ<br />

" How does SQL tracing work in 3Tier mode?<br />

! PeopleCode that runs on the client is saved to client<br />

! All SQL tracing and PeopleCode that runs on<br />

Application Server is saved to Application Server<br />

! SQL Tracing can be controlled by TraceSQL and<br />

TraceSqlMask<br />

! TraceSQL all clients<br />

! TraceSqlMask allows client to turn on certain level<br />

! PeopleCode tracing works much the same<br />

76


Tracing FAQ<br />

" If server / process fails during Application Server<br />

boot...<br />

! first review APPSRV.LOG, then TUXLOG.mmddyy<br />

! TUXLOG.mmddyy error messages/codes found in TUXEDO<br />

documentation through Tux Web Monitor<br />

" If can’t logon with client ...<br />

! first review APPSRV.LOG, then TUXLOG.mmddyy and<br />

ensure Application Server started successfully<br />

! set network trace<br />

" If slow performance while loading panel group…<br />

! set SQLTrace files and review<br />

Question and Answer<br />

77


PeopleSoft WEB-volution<br />

" Pre-version 6.x<br />

! Third Party development<br />

(NetDynamics)<br />

" PeopleSoft version 7.0x<br />

! WEB client<br />

" PeopleSoft version 7.54<br />

! HTML Client<br />

" PeopleSoft version 7.55<br />

! WebDeploy<br />

Pre-Version 7.x WEB Solutions<br />

" Third party applications<br />

! NetDynamics with message agent<br />

! Custom development<br />

+ Browser independent<br />

− Upgrade required re-development<br />

− Developers had to validate<br />

application logic<br />

− Security concerns<br />

78


Pre-Version 7.x WEB Solutions<br />

MA<br />

PS Client<br />

Client Workstation<br />

HTML<br />

Web Browser<br />

HTTP<br />

WAN<br />

Web Server<br />

NetDynamics<br />

Application<br />

Server<br />

PeopleSoft Extension<br />

MA PS Client<br />

MA<br />

PS Client<br />

PS Database<br />

NT 4.0 Server<br />

LAN<br />

MA<br />

PS Client<br />

NetDynamics<br />

Application<br />

Server<br />

PeopleSoft Extension<br />

MA PS Client<br />

MA<br />

PS Client<br />

Post Version 6 WEB Solutions<br />

" WEB Client<br />

! Java Based<br />

" HTML Client<br />

! ASP access to PeopleSoft panels<br />

! HTML Access Framework<br />

" PS WebDeploy<br />

! WEB installation of Windows<br />

client<br />

" JMAC agent<br />

! API access to PeopleSoft data<br />

79


PeopleSoft 7.x WEB Client<br />

+ High degree of integration<br />

+ Faster data entry<br />

+ WEB server independent<br />

− Browser dependent<br />

− Not recommended over slow links<br />

" JAVA based<br />

" Connects via Jolt, JRAD/JRLY<br />

" Processes Panels, Query, Worklists<br />

and limited PeopleCode<br />

PeopleSoft 7.54 HTML Client<br />

+ Ties Message Agent logic to HTML<br />

documents<br />

+ Needs HTML 3.2 Compliant Browser<br />

+ Ideal for lower bandwidth access<br />

" Does not replace current Web client<br />

" Active Server Page (ASP)<br />

" Two basic components:<br />

! JMAC<br />

! HTML Access Framework<br />

80


PeopleSoft 7.54 HTML Client<br />

" Fully customizable interface<br />

" Multithreaded application<br />

" Leverages PeopleSoft metadata<br />

" Component Object Model (COM)<br />

compliant component<br />

" Ability to print screen information<br />

PeopleSoft JMAC<br />

" JMAC - Java Message Agent Client<br />

! Provides API Level access<br />

! Rewritten Windows Message Agent<br />

! TUXEDO Jolt Client<br />

! Applies application logic to data<br />

81


PeopleSoft New Technology<br />

" HTML Access<br />

! ASP access to PeopleSoft panels<br />

! HTML Access Framework<br />

" Java Message Agent Client<br />

! Rewritten Windows client<br />

" Demo Time<br />

PeopleSoft HTML Access<br />

" Does not replace current Web client<br />

" Needs HTML 3.2 Compliant Browser<br />

" Ideal for lower bandwidth access<br />

" Ties Message Agent logic to HTML<br />

documents<br />

" Active Server Page (ASP)<br />

" Two basic components:<br />

! JMAC<br />

! HTML Access Framework<br />

82


PeopleSoft HTML Access<br />

" Fully customizable interface<br />

" Multithreaded application<br />

" Leverages PeopleSoft metadata<br />

" Component Object Model (COM)<br />

compliant component<br />

" Ability to print screen information<br />

PeopleSoft HTML Access<br />

" JMAC - Java Message Agent Client<br />

! Provides API Level access<br />

! Rewritten Windows Message Agent<br />

! TUXEDO Jolt Client<br />

83

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!