How to Clear the Application Server Cache Without Shutting it Down
2011-11-12 18:21
387 查看
How to Clear the Application Server Cache Without Shutting it Down
Updated 4.9.2008: It is often necessary to clear the physical cache files on the PeopleSoft application server. You would think thatafter all the length of time that PeopleTools has been around, that development would have sorted out the problems in object version numbering. Sometimes, recently migrated changes do not take effect until the cache is cleared. Global Support will nearly always
ask you to clear the cache if you are experiencing any kind of problem in the PIA.
Normally, you would shut down the application server, delete the physical cache directories and restart the application server.
From PeopleTools 8.48, each Application server process can only use one dedicated set of physical cache files that is in a directory whose name includes the name and ID number of the server, (previously the server process could use any unlock set cache directories).
This allowed PeopleSoft to add an option to the
psadmin utility to trigger each PSAPPSRV process to clear out its own physical cache (my thanks to the anonymous question asked after the original version of this posting that reminded me). This option also causes
each server process to recycle. It is the recommended and supported way to clear the physical cache files.
This can also be invoked from the command line
psadmin -c purge -d <domain> [-noarch | -arch <archive_directory>] [-log <"log_comments">] where 'domain' specifies domain name in PS_HOME and 'archive_directory' specifies location to which to quarantine the purged cache, 'log_comments' specifies any comments to be added to the purge cache log entry
However, even in previous versions, there has always been a way to invalidate all physical cache files. Any cached object older than the value of
LASTREFRESHDTTM on the table
PSSTATUS (it was on a different table prior to PeopleTools 8) is purged from the cache when the process that references that cache starts. Therefore, if that value is updated to the current time, the entire cache will be purged.
UPDATE PSSTATUS SET LASTREFRESHDTTM = SYSDATE / COMMIT /
Sometimes, developers also have to clear the physical cache on their clients used by Application Designer. Updating
PSSTATUS also clears two-tier client caches. In fact, this behaviour is left over from the days when PeopleTools was a two-tier application, and it was necessary to clear cache files on users' desktop computers.
If you have multiple Application Servers on a single database, then you can shut each one down in turn without any loss of server. The users will fail over to the surviving servers. However, this can result in the load being unevenly distributed and could
overload one server.
In small environments, and this includes most development and test systems, there is only a single application server. Shutting down an application server requires downtime and can be disruptive.
If an application server has at least two instances of a server process then each process can be recycled one by one, and there is no loss of service because the other processes can handle incoming requests. You could do this manually by entering the stop and
boot commands in tmadmin (I discussed this in
Chapter 13 of PeopleSoft for the Oracle DBA, but didn't combine it with the idea of clearing the Application Server cache).
I have produced a script,
tuxcycle.sh (available from the
Go-Faster website) that uses the Tuxedo command line interface utility,
tmadmin, to find out which PSAPPSRV processes are running, and then sequentially recycles each of them. I don't think I would completely automate these two operations into a single process, nor would I run them
unattended, but you can now clear cache files without taking a system away from users or developers.
Remember, that users will experience a reduction in performance after clearing the cache because it needs to be rebuilt by querying the PeopleTools table.
The Process Scheduler, Master Process Scheduler, Distribution Server, and Application Engine processes also have physical caches. These are also cleared when
LASTREFRESHDTTM is updated and the processes restarted. However, you should not shut down the Process Scheduler while processes are executing. The server process will shutdown and the Application Engine will be killed
if using an Application Engine server process (PSAESRV). Any stand-alone processes, including
psae, will be killed by the Process Scheduler when it is restarted.
相关文章推荐
- How to programmatically clear the filesystem memory cache in C++ on a Linux system?
- How to see all the application errors related to SQL Server and export them to a .csv file.
- [转]How to remove an assembly from the Cache if it is locked by Microsoft Installer
- Get "Server Down" when retrieve the channel list in sopcast, how to solve it?
- [XAF] How to define a business class at runtime or allow end-users to configure its members via the application UI?
- How to freeze a dynamic aspx page into a static html page (on the server).
- android中The connection to adb is down,ADB server didn't ACK 问题和解决
- This application failed to start because it could not find or load the Qt platform plugin "xcb".
- Database Performance: How to reduce "library cache: mutex X" waits for scalability in the Oracle dat
- How to: How to disable Java Security Warning "The application requires an earlier version of Java."
- [Code Snippet]How to shut down the computer on C#
- qt程序运行在树莓派错误解决This application failed to start because it could not find or load the Qt platform plu
- iOS 如何在苹果电脑上安装svn 服务器(how to install svn server on the computer of mac os x)
- How do I lock the orientation to portrait mode in a iPhone Web Application?
- Down to the TLP: How PCI express devices talk (Part I)
- Annotation Processor - How to get the Class it is processing
- How to cal Session_End() method when you store the Session state not in Inprc but StageServer, etc.
- How to change the SQL Server 2008 default install path
- All about TAF - How To Configure Server Side Transparent Application Failover [ID 460982.1]
- HTTP Status 503 - Server is shutting down or failed to initialize