This document provides an overview of PeopleSoft integration broker architecture and performance tuning tips for asynchronous and synchronous messaging. It discusses key aspects of integration broker configuration like thread pool size, load balancing, message segmentation, and using dedicated messaging servers. Tools for monitoring and troubleshooting bottlenecks are also covered. The goal is to help optimize integration broker performance and address issues like increased CPU usage, messages getting stuck, or improving synchronous message response times.
Accelerating Enterprise Software Engineering with Platformless
Safe Harbor Statement and PeopleTools Integration Broker Performance Tuning
1.
2. Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decision. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
5. Some issues to think Production system running fine for years and Integration Broker usage is low. Suddenly Application Server box’s CPU reaches 90%. Further troubleshooting reveals PSSUBDSP service causes it. We only use PSRF* messages, ie. Reporting tools messages before. This week, we have started to implement dynamic role sync messages. Now messages stuck in working status. We have a third party web interface sending sync messages to PeopleSoft web services. We have load balanced integration gateway. Web Server box and App server box are powerful. No queues in Tuxedo monitor. How can we improve the benchmark performance of message response time?
6. Architecture “PeopleSoft 9.1 combines all the latest features customers expect in a web-based application with the tools needed to extend it into the future.” Larry Acushnet Company
7. Architecture Integration Engine Application PeopleSoft Application RDBMS Server Outbound Operation Integration Gateway Third Party Web Server System Application PeopleSoft Application RDBMS Server Inbound Operation
11. Asynchronous & Synchronous Service Operation “PeopleSoft 9.1 combines all the latest features customers expect in a web-based application with the tools needed to extend it into the future.” Larry Acushnet Company
12. Message segments Large amounts of data(gigabytes) Divide rowset-based and nonrowset-based messages into segments
14. Thread Pool Size--Asynchronous The number of concurrent threads the handler can spawn for HTTP requests Only for PSPUBHND handler [PSPUBHND_dflt] ;=============================================== ; Settings for publication contract handler ;===============================================Max Instances=1 Service Timeout=1200 Recycle Count=20000 Allowed Consec Service Failures=0 ; Thread Pool Size. The Minumum value is 1 and maximum allowable is 20. Thread Pool Size=1
15. Thread Pool Size--Synchronous The number of concurrent threads the handler can spawn for HTTP requests Default is 5.
16. Integration Gateway-Load Balancing Load Balancer in front of Gateways. JVM--MinimumHeapSize and MaximumHeapSize to the same value, eg. 512MB.
17. Asynchronous Service Operation “PeopleSoft 9.1 combines all the latest features customers expect in a web-based application with the tools needed to extend it into the future.” Larry Acushnet Company
18. Dedicated messaging server Dedicated server for high message volume Dedicated server domains should have PSAPPSRV configured in addition to pub/ sub servers. Dedicated messaging servers are assigned a certain number of queue names
19. Multiple domains PUB/SUB domain separates from PIA domain Scan Interval parameter to a value of 1 for each dispatcher in pub/sub server. Only one active pub/sub domain is supported.
21. Master/Slave Load Balance Compensate for processing capabilities of various machines. Two hyperlinks Master/Slave Load Balance and Slave Template Setup.
23. Master/Slave Load Balance--Deferred Master Domain Processing “Enabled” –Default. Master will process its appropriate share of requests “Deferred – All Queues” --One active slave “Deferred – Unordered Queues” -Unordered queue +one active slave
28. Application Engine Handler Problem: A long running message takes up all handler resources Solution: Offer a Service Operation Handler that is a direct initiation of an AppEngine program Offload the intense processing of the message to the Process Scheduler Guarantee ordering of message Message must be asynchronous
29. Bulk Load Handler Principle of Data Mover script as notification handler Asynchronous messages only Great for loading data to staging table
31. Basic performance tips---server instance How many messaging server: At least 3 in production [PSSUBHND_dflt] ;============================================== ; Settings for subscription contract handler ;============================================== Min Instances=3 Max Instances=3
32. Basic performance tips---messaging tables For asynch messages, they are stored in PSAPMSGPUBHDR, PSAPMSGPUBCON, PSAPMGSSUBCON and etc. Archive them regularly
33. Batch processing or full sync EIP Database Tuning--Temp table indexing Archiving—N in queue definition. Database Layout –tablespaces Chunk messages -Around 3 MB a message. Message segment
34. Synchronous Service Operation “PeopleSoft 9.1 combines all the latest features customers expect in a web-based application with the tools needed to extend it into the future.” Larry Acushnet Company
36. Tunning Application Server Provider of Synchronous Service Operations—Dedicated Application server domain Jolt Handlers [JOLT Listener] ;========================================================================= ; Settings for JOLT Listener ;========================================================================= Address=%PS_MACH% Port=9000 Encryption=0 Min Handlers=60 Max Handlers=80 Max Clients per Handler=20
37. Basic performance tips---server instance How many psappsrv instances : At least 3 in production [PSAPPSRV] ;============================== ; Settings for PSAPPSRV ;================================ ;------------------------------------------------------------------------- ; UBBGEN settings Min Instances=3 Max Instances=3
38. Guideline Response Time---Light transform, light onrequestpeoplecodeand light CI. Number of Synchronous Requests—Minimum. Small Messages—compression. Exception
39. Tools to determine and Reduce bottlenecks “PeopleSoft 9.1 combines all the latest features customers expect in a web-based application with the tools needed to extend it into the future.” Larry Acushnet Company
40. Application Server layer Tuxedo Commands Pq--shows the current Tuxedo queuing on the domain. Psr--current service request for each server on the domain and also the load (number of requests) that the server processed. Tuxedo Settings Message Segment Size---Increase size from the default 24 to 8K or 16K Message Queue Size---Increase from 64K to 1M or 2M Max Message Size---Increase from 64K to 1M or 2M
42. Some issues to think Production system running fine for years and Integration Broker usage is low. Suddenly Application Server box’s CPU reaches 90%. Further troubleshooting reveals PSSUBDSP service causes it. We only use PSRF* messages, ie. Reporting tools messages before. This week, we have started to implement dynamic role sync messages. Now messages stuck in working status. We have a third party web interface sending sync messages to PeopleSoft web services. We have load balanced integration gateway. Web Server box and App server box are powerful. No queues in Tuxedo monitor. How can we improve the benchmark performance of message response time?