Transcript
PeopleSoft Online Performance Guidelines
Agenda
Introduction Web Browser configuration Web Server configuration Application Server
PIA
PeopleSoft Internet ArchitectureIntroduction
Pure Internet Architecture
Communication mechanism
Architecture Overview
Server Process
Request Queues
Back to the basic Production vs Development setup
Timeout [Prod: on, Dev: off] Cache [Prod: on, Dev: off]
LAN speed between each leg ping -l [size] -r [route_count] [hostname] ftp test DataMover Export at different legs
Sufficient memory any paging hardware cache enable
Tuned the Operating System
ApplicationServer
Web Server T
UXEDO
RDBMSServer
SQLSQL
SQLJOLTJOLTHTTP/HTMLHTTP/HTML
ServicesServices
App MessagingProcessor
App MessagingApp MessagingProcessorProcessor
QueryProcessor
QueryQueryProcessorProcessor
ComponentProcessor
ComponentComponentProcessorProcessor
Bus InterlinkProcessor
Bus InterlinkBus InterlinkProcessorProcessor
User InterfaceGenerator
User InterfaceUser InterfaceGeneratorGenerator
ProcessschedulerProcessProcess
schedulerscheduler
PortalProcessor
PortalPortalProcessorProcessor
SecurityManagerSecuritySecurityManagerManager
ApplicationEngine
ApplicationApplicationEngineEngine
RDBMSInstanceRDBMSInstance
ApplicationData TablesApplicationApplicationData TablesData Tables
ApplicationMeta data
ApplicationApplicationMeta dataMeta data
PortalRegistryPortalPortal
RegistryRegistry
BatchProcesses
BatchProcesses
ProcessScheduler
Server
ProcessProcessSchedulerScheduler
ServerServer
JavaServletsJava
Servlets
PortalServletPortalPortalServletServlet
PresentationRelay ServletPresentationPresentationRelay ServletRelay Servlet
IntegrationRelay ServletIntegrationIntegration
Relay ServletRelay Servlet
PeopleSoft Internet Architecture
Web Browser
ApplicationServer
Web Server T
UXEDO
RDBMSServer
SQLSQL
SQLJOLTJOLT
ServicesServices
App MessagingProcessor
App MessagingApp MessagingProcessorProcessor
QueryProcessor
QueryQueryProcessorProcessor
ComponentProcessor
ComponentComponentProcessorProcessor
Bus InterlinkProcessor
Bus InterlinkBus InterlinkProcessorProcessor
User InterfaceGenerator
User InterfaceUser InterfaceGeneratorGenerator
ProcessschedulerProcessProcess
schedulerscheduler
PortalProcessor
PortalPortalProcessorProcessor
SecurityManagerSecuritySecurityManagerManager
ApplicationEngine
ApplicationApplicationEngineEngine
RDBMSInstanceRDBMSInstance
ApplicationData TablesApplicationApplicationData TablesData Tables
ApplicationMeta data
ApplicationApplicationMeta dataMeta data
PortalRegistryPortalPortal
RegistryRegistry
BatchProcesses
BatchProcesses
ProcessScheduler
Server
ProcessProcessSchedulerScheduler
ServerServer
JavaServletsJava
Servlets
PortalServletPortalPortalServletServlet
PresentationRelay ServletPresentationPresentationRelay ServletRelay Servlet
IntegrationRelay ServletIntegrationIntegration
Relay ServletRelay Servlet
Web Browser Settings
Web Browser
HTTP/HTMLHTTP/HTML
Web Browser Settings
Reduce unnecessary checking and downloading of the same Internet objects within the online transaction session.
The Internet objects that most likely remain unchanged during an online session are: Graphics objects (*.jpg, *.gif) Style Sheets (*.css) Java Scripts (*.js) Some HTML pages (such as PIA Login page)
Configuration Recipe Internet Option Temporary Internet Files Settings Automatically
MS Internet Explorer
Netscape
Configuration Recipe Edit Preferences Advanced Cache Once per session
HTTP 1.1 compliant Web Browser
Only HTTP 1.1 compliant web browsers request compressed files. Web browsers that are not HTTP 1.1 compliant request and receive the files un-compressed, therefore the Web Server will not be able to send any compressed HTML file to the browser (despite the configuration.properties has the Compress Response switch turns on.)
Which Browser is HTTP 1.1 compliant?
Netscape 4.5 and above, including the new Netscape 6 Explorer versions 4 and above (other than IE Mac versions 4.5/5
which do not support HTTP 1.1 compression). Here is the configuration recipe to verify if Internet Explorer is
configured to use the HTTP 1.1 protocol: 1. Open the Internet Options property sheet If using IE 4, this is located under the View menu If using IE 5, this is located under the Tools menu 2. Select the Advanced tab Under HTTP 1.1 settings, verify that Use HTTP 1.1 is selected
HTTP 1.1 compliant Web Browser
ApplicationServer
Web Server T
UXEDO
RDBMSServer
SQLSQL
SQLJOLTJOLT
ServicesServices
App MessagingProcessor
App MessagingApp MessagingProcessorProcessor
QueryProcessor
QueryQueryProcessorProcessor
ComponentProcessor
ComponentComponentProcessorProcessor
Bus InterlinkProcessor
Bus InterlinkBus InterlinkProcessorProcessor
User InterfaceGenerator
User InterfaceUser InterfaceGeneratorGenerator
ProcessschedulerProcessProcess
schedulerscheduler
PortalProcessor
PortalPortalProcessorProcessor
SecurityManagerSecuritySecurityManagerManager
ApplicationEngine
ApplicationApplicationEngineEngine
RDBMSInstanceRDBMSInstance
ApplicationData TablesApplicationApplicationData TablesData Tables
ApplicationMeta data
ApplicationApplicationMeta dataMeta data
PortalRegistryPortalPortal
RegistryRegistry
BatchProcesses
BatchProcesses
ProcessScheduler
Server
ProcessProcessSchedulerScheduler
ServerServer
JavaServletsJava
Servlets
PortalServletPortalPortalServletServlet
PresentationRelay ServletPresentationPresentationRelay ServletRelay Servlet
IntegrationRelay ServletIntegrationIntegration
Relay ServletRelay Servlet
Web Server Settings
Web Browser
HTTP/HTMLHTTP/HTML
WebLogic Service Pack Under normal circumstances, WebLogic should be
using the "Posix Performance Pack", and this will use the native OS's socket implementation. When the "Performance Pack" is not loaded properly, generic socket implementation will be used, which is not efficient and there could be performance issue or socket stability problems.
service pack can be obtained from ftp://ftp.peoplesoft.com/outgoing/GSC/weblogic/5.10
Logs Mon Sep 24 15:43:40 PDT 2001:
Listening on port: 3300
Mon Sep 24 15:43:40 PDT 2001: Listening on port: 5443
Mon Sep 24 15:43:40 PDT 2001: System has file descriptor limits of - soft: '256', hard: '1024'
Mon Sep 24 15:43:40 PDT 2001: Using effective file descriptor limit of: '1024' open sockets/files.
Mon Sep 24 15:43:40 PDT 2001: Allocating: '3' POSIX reader threads
Mon Sep 24 15:43:41 PDT 2001: WebLogic Server started
WebLogic Thread Count
Increase ExecuteThreadCount change the weblogic.properties as Weblogic.system.executeThreadCount=100
JVM Heap Size
Set JVM Heap Size between 64MB to 512 MB
Set min and max to the same value -verbosegc -noclassgc
WebLogic 5.1 Win/NT Configuration Recipe
Regedit HKEY_LOCAL_MACHINE SOFTWARE BEA Systems WebLogic 5.1.0 MAX_HEAP_SIZE
Increase beyond 64 MB Set MIN_HEAP_SIZE = MAX_HEAP_SIZE
MIN_HEAP_SIZE
UNIX Configuration Recipe Edit startWebLogic.sh Increase beyond 64 MB Set MIN_HEAP_SIZE = MAX_HEAP_SIZE
File Descriptor
A file descriptor is required for every file that is opened, every *.class file read in by weblogic, every jolt connection
To raise the file descriptors for UNIX, use the following command:
ulimit n 4000 Do nothing for Win/NT
Web Server Settings
Enable Compression (Gzip, deflate) responses; in particular for WAN/Dialup users.
PIA will try to send compressed HTML response to the compression-enabled (HTTP 1.1 enabled) browser, such as Microsoft IE 5 or above.
Modified Configuration.properties
CompressResponse=true
PortalCompressResponse=true
PortalAcceptCompressedEncodings=true
CompressResponse=true
PortalCompressResponse=true
PortalAcceptCompressedEncodings=true
How to tell Compression is on?
Multiple AppServer domainsControl-JModified Configuration.properties
connectionInformation=trueconnectionInformation=true
Reducing TCP Wait time
The default TCP Wait Time for both NT and most UNIX operating systems are 4 minutes, which is too long for PIA usage and tends to leave too many socket connections staying in the TIME_WAIT state.
By shortening the WAIT time, the socket can be recycled more efficiently.
NT: TCP Wait Time Use the registry editor, regedit, and create a
REG_DWORD named TcpTimedWaitDelayunder HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TcpIp\Parameters
UNIX: TCP Wait Time For HP and SUN As root do:
ndd -set /dev/tcp tcp_time_wait_interval 60000
where 60000 is for 60 secs, the minimum recommended value. You must put this command in one of the rc2.d scripts to get it to be automatically set at boot time
For AIX To set the TCP_TIMEWAIT values to 15
seconds, run the followign command: /usr/sbin/no o tcp_timewait =1
HTTP KeepAlive
Socket connection needs File Descriptor Reusing a socket helps performance, but . Too many KeepAlive packets, jam the pipe. HTTP 1.0 does not do good job in socket reuse. Many CLOSE_WAIT.
netstat -a To make it simple, turn off the HTTP
KeepAlive.
Turn off HTTP KeepAlive
For Apache: Modified httpd.conf
weblogic.httpd.http.keepAlive.enable=falseweblogic.httpd.http.keepAliveSecs=60weblogic.httpd.https.keepAliveSecs=120
weblogic.httpd.http.keepAlive.enable=falseweblogic.httpd.http.keepAliveSecs=60weblogic.httpd.https.keepAliveSecs=120
KeepAlive OffMaxKeepAliveRequests 0KeepAliveTimeout 200
KeepAlive OffMaxKeepAliveRequests 0KeepAliveTimeout 200
For WebLogic Modified Weblogic.properties
Administer Personalization
Multi-row insert
Caching Navigation Pages on the browser
METAXP = 2000
Caching Navigation Pages on the browser
METAXP = 2000
ApplicationServer
Web Server T
UXEDO
RDBMSServer
SQLSQL
SQLJOLTJOLT
ServicesServices
App MessagingProcessor
App MessagingApp MessagingProcessorProcessor
QueryProcessor
QueryQueryProcessorProcessor
ComponentProcessor
ComponentComponentProcessorProcessor
Bus InterlinkProcessor
Bus InterlinkBus InterlinkProcessorProcessor
User InterfaceGenerator
User InterfaceUser InterfaceGeneratorGenerator
ProcessschedulerProcessProcess
schedulerscheduler
PortalProcessor
PortalPortalProcessorProcessor
SecurityManagerSecuritySecurityManagerManager
ApplicationEngine
ApplicationApplicationEngineEngine
RDBMSInstanceRDBMSInstance
ApplicationData TablesApplicationApplicationData TablesData Tables
ApplicationMeta data
ApplicationApplicationMeta dataMeta data
PortalRegistryPortalPortal
RegistryRegistry
BatchProcesses
BatchProcesses
ProcessScheduler
Server
ProcessProcessSchedulerScheduler
ServerServer
JavaServletsJava
Servlets
PortalServletPortalPortalServletServlet
PresentationRelay ServletPresentationPresentationRelay ServletRelay Servlet
IntegrationRelay ServletIntegrationIntegration
Relay ServletRelay Servlet
Application Server Settings
Web Browser
HTTP/HTMLHTTP/HTML
Memory resources
.Make sure don't have too many PSAPPSRV processes booted. During peak usage times, you should see some small amount of queuing for thepsappsrv processes.If you have too many processes, this will affect performance. The extra PSAPPSRV processes will not only take up memory space and CPU time from the OS, the main issue is that each PSAPPSRV will not be 'sufficiently' cached. I.e. Each PSAPPSRV can only cache a portion of the user panels. It will take much longer time to fully cache each PSAPPSRV.
NT Task Manager
NT: Perfmon
UNIX ps_chk_domain scriptHere is a sample output of the ps_chk_domain script:
Please Enter your application server domain name??
PT81
Please Enter interval in seconds??
10
Please Enter # of interval's ??
100
Tue Oct 23 23:00:33 PDT 2001
For all PS Processes:
Resident memory size is: 123.543 MB
CPU for PS Processes: 11 %
Virtual memory size is: 198.098 MB
For all PSAPPSRV Processes:
Resident memory size is: 108.453 MB
CPU for PS Processes: 9 %
Virtual memory size is: 106.559 MB
---
Resident memory refers to the real physical memory currently required by the process for itsoperation.
Virtual memory refers to the process virtual address size, this include memory that has beenpaged out to the physical disk. If the Virtual memory continues to increase, the RecycleCount ofthe AppServer should be lowered.
Determine queue length
To determine the queue length of the specific domain, do the following steps: run psadmin Go to PeopleSoft Domain Administration for the specific domain name
Select TUXEDO command line Run the command pq
PSAPPSRV Recycle Count In PSAPPSRV.CFG It is recommended to set Recycle Count at 2000.
For PeopleTools 8.15 and earlier:
Set the Recycle Count at 2000.
For PeopleTools 8.16 and after:
The default value for Recycle Count is already set to 2000. The recycle count should be adjusted so that no memory swapping is
introduced because of a high recycle count value. (See session above for how to determine memory swapping.)
To minimize the cost of re-caching the AppServer, it is important to enable File Cache on the AppServer. To enable Server Caching, set the EnableServerCaching=1, which is the default value.
MaxInMemoryObjects
For PeopleTools 8.16 and before We have the MaxInMemoryObjects Benefit:
Keep memory footprint low
Disadvantage: very CPU intensive
Recommendation: maxInMemoryObjects=0
top related