Before you begin
You will need the following files to complete
this task. After you install the
Presence Server product,
these files are found in the directory
was_root/installableApps/presence/scripts/config.
- SystemConfiguration.xml
- ConfigurationParams.txt
- UpdateConfiguration.jar
Before you can make changes to your configuration, the file
UpdateConfiguration.jar must
be in the class path.
About this task
Presence Server offers
the following performance-related configuration settings:
- You can activate key performance indicators (KPI) to trace system
activity. These performance indicators are based on the Performance
Monitor Infrastructure (PMI) found in WebSphere® Application Server,
and you can view them.
- When a presence document changes (as the result of a PUBLISH request
or expiration), the server publishes a JMS message to indicate the
change. Additional content–for example, the modified document and
the document version number--is included so that other servers can
retrieve the documents more easily. If you do not require the additional
content, you can disable this feature. Doing so reduces the size
of JMS messages and may, as a result, improve the performance of
your system.
- When Presence Server receives
a presence rules authorization document, it sends a JMS message to
other servers in the cluster. The authorization document is included
in the JMS message by default. You can override this default to improve
performance when working presence rules authorization is enabled.
- The notification throttling mechanism allows client applications
to limit the rate of notifications, to decrease the processing overhead
and the network load. A significant saving may be achieved with subscriptions
to resources with high notification rate, such as subscriptions to
large resource lists.
- You can configure Presence Server so
that it waits to send the first NOTIFY message until it has received
all of the information from a subscriber (IBM® XDMS or
an external source). When notification throttling is enabled, this
setting can prevent the sending of incomplete NOTIFY messages. It
can also improve performance because it reduces the number of NOTIFY
messages sent to the subscriber.
- You can also disable the caching of changed documents. Doing this
can reduce the number of database transactions, resulting in improved
performance.
To
activate and deactivate performance-related tools, follow these steps.
The topic Performance metrics lists the key performance
indicators that are supported by Presence Server .
- Open SystemConfiguration.xml with
a text editor.
- Modify the attributes on the PMI tag to
activate or deactivate PMI-based key performance indicators (KPIs).
You can set the following attributes. Default values are
shown.
- accumulationTime="1"
- The amount of time, in minutes, for which KPI data is collected.
Data older than the specified time interval is discarded.
- outputToTrace="false"
- true to store KPI data in trace records so that
it can be viewed in logs; false not to store it in
trace records.
- outputViaSOA="false"
- true to store KPI data in a format where it can
be viewed using service-oriented architecture (SOA) software; false not
to store it in this fashion.
For a complete list of the PMI-based
key performance indicators that are used by Presence Server,
refer to the topic Key performance indicators.
- Modify the documentChangeJMS tag to specify
whether the contents of changed documents should be included in JMS
messages.
Set includeFullDocument="true" (the
default) to include the contents of changed documents in JMS messages.
Set includeFullDocument="false" to
omit the contents of changed documents from the messages.
A
setting of true might improve performance because
the documents are cached and do not need to be retrieved from the
database.
For example: - <documentChangeJMS includeFullDocument="true"/>
- Modify the authorizationChangeJMS tag
to specify whether, following a change in authorization, the JMS message
sent to servers in the cluster should contain the authorization document.
Set includeFullDocument="true" (the
default) to include the authorization document in the JMS message
after a change in authorization.
Set includeFullDocument="false" to
omit the authorization document from the JMS message.
A setting
of true might improve performance because the documents
are cached and do not need to be retrieved from the database. If you
do not require the additional content, you can disable this feature.
Doing so reduces the size of JMS messages and may, as a result, improve
the performance of your system.
For example: - <authorizationChangeJMS includeFullDocument="true"/>
- Modify the attributes on the throttling tag
to limit the rate of SIP event notifications for one or more event
packages.
Set enable="true" to enable
notification throttling; set enable="false" to disable
it. By default, notification throttling is enabled.
You can
set throttling intervals for three types of event packages. Within
the
throttling tag, each event package is represented
by a separate
event tag with the following attributes:
- name=""
- String specifying the type of event package. The following values
are valid:
- presence
- presence.winfo
- presence.winfo.winfo
- default=""
- Default throttle interval, in seconds. A SIP notification for
the specified event package will be accepted only once during this
interval. The valid range is 0-3600. The default value is 5.
- minimum=""
- Minimum throttle interval, in seconds. The valid range is 0-3600.
The default value is 5.
- maximum=""
- Maximum throttle interval, in seconds. The valid range is 0-3600.
The default value is 600.
For example: - <throttling enable="true">
<event name="presence" default="5" minimum="5" maximum="600"/>
<event name="presence.winfo" default="5" minimum="5" maximum="600"/>
<event name="presence.winfo.winfo" default="5" minimum="5" maximum="600"/>
</throttling>
- On the waitForExternalInformation tag,
modify the maxInterval attribute to specify how long
to wait while collecting information from IBM XDMS and
other external sources before notifying the client.
maxInterval specifies
the time, in seconds, to wait while collecting information from IBM XDMS and
other external sources before sending a notification to the client.
For group subscriptions, the time is measured after the group content
is received from IBM XDMS.
Valid
values are 0-60. The default value is 15.
Note: Avoid setting the interval
too small, to avoid having notifications sent before all information
has been collected. It is also recommended that you select a value
of 30 or below because a subscriber may invalidate the subscription
if a notification is not returned within 30 seconds.
For example: - <waitForExternalInformation maxInterval="15" />
- Modify the documentCache tag to specify
whether the contents of changed documents are saved in cache.
Set enable="true" (the
default) to cache the contents of changed documents.
Set enable="false" to
avoid caching changed documents.
A setting of true might
improve performance because the documents are cached and therefore
do not need to be retrieved from the database.
For
example: - <documentCache enable="true"/>
- Save and close the file.
- Open ConfigurationParams.txt with
a text editor.
- Update
the following parameters for your environment:
- cfg.system = xml_path (where xml_path is
the directory location for SystemConfiguration.xml)
- username = database_administrator_user_name
- password = database_administrator_password
dbDriver =
com.ibm.db2.jcc.DB2Driver
dbDriver =
oracle.jdbc.driver.OracleDriver
dbConnectionString =
jdbc:db2://database_host_name:database_port/database_name
dbConnectionString =
jdbc:oracle:thin:@database_host_name:database_port:database_name
- Run the java command
that is appropriate for your operating system:
Important: Enter the following
parameters on a single line.

java
-classpath UpdateConfiguration.jar: jdbc_path CmdConfig config_path/ConfigurationParams.txt
(where jdbc_path is the directory location
for your JDBC drivers and config_path is the directory
location for ConfigurationParams.txt)Important: JDBC drivers must be separated by a colon.
For example:
/usr/IBM/WebSphere/AppServer/java/bin/java -classpath UpdateConfiguration.jar:/opt/IBM/db2/V9.5/java/db2jcc.jar:/opt/IBM/db2/V9.5/java/db2jcc_license_cu.jar CmdConfig ConfigurationParams.txt
/opt/IBM/WebSphere/AppServer/java/bin/java -classpath UpdateConfiguration.jar:/opt/IBM/db2/V9.5/java/db2jcc.jar:/opt/IBM/db2/V9.5/java/db2jcc_license_cu.jar CmdConfig ConfigurationParams.txt
- Restart the application:
- Click .
Note: If you are using WebSphere Application Server version 6.1.0.x, reach
this window by clicking .
- Select the check box associated with the Presence Server.
- Click Stop. The Application
Status column should indicate a Stopped status.
- Click Start. The Application
Status column should indicate a Started status.