Consultor Eletrônico



Kbase P53304: How much memory is my client using on UNIX platforms.
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   16/10/2006
Status: Unverified

GOAL:

How much memory is my Progress client using on Unix

CAUSE:

When a DBA makes projections for growth on a system it may be necessary to determine the average amount of memory used by one Progress session.

Since memory statistics displayed for a Process on Unix are not straight forward when a connection is made to a database in shared memory it will be necessary to have the clients connect remotely to the database to clearly chart the clients memory usage.

FIX:

on Steps for each database Server
1) create an entry in the /etc/services file which is unique to each database
2) when the next opportunity exists, reboot the database(s) server(s) and add the -S <service name> to the normal startup parameters of each database

Steps for the client
1) Make a copy of the _progres executable and rename it _memtrack.
2a) If you use the Progress supplied pro or mpro scripts then
define an environment variable for your most average user named PROEXE
the PROEXE environment variable should point to the _memtrack executable
Example:
PROEXE=/usr1/dlc/bin/_memtrack;export PROEXE
2b) If you use a custom script to start your database(s) then you will likely want to make a separate copy for one user and instead of referencing the normal _progres client executable you will reference the _memtrack
executable.
3) Start the client application with your normal parameters as well as the -H -S -N parameters to connect to the one database and run your application
code.
4) During the day use your favorite system tool (top, smit, glance) to monitor the memory utilization of the _memtrack executable and record the highest
memory usage for that process. This will be the average memory usage for one client if that client is an average user.