Troubleshooting Unica Campaign Performance

Performance depends on many factors, including your database and web server configuration, network connectivity, and Unica Campaign and Unica Platform configuration.

The following list provides a number of suggestions that may help to improve performance. Use this list to quickly identify possible areas for improvement, so you can make adjustments and rule out possible causes. In cases where more information is available, each suggestion points to the appropriate guide where you can find detailed information.

Web application server

  • If you are using WebSphere, check the JVM heap size specified in the WebSphere profile. Typically, an initial setting of 512 and a maximum of 1024 (or depending on the server configuration) should suffice.
  • If you are using WebLogic, set the JVM memory heap size parameters to 1024 by adding the following line to the setDomainEnv script: Set MEM_ARGS=-Xms1024m -Xmx1024m -XX:MaxPermSize=256m
  • Under certain circumstances, deploying older legacy interactive channels or interactive channels with large deployment histories can stress the system and require 2048mb or greater of Campaign designtime and/or Interact runtime Java heap space.

    System administrators can adjust the amount of memory available to the deployment systems via the following JVM parameters:

    -Xms####m -Xmx####m -XX:MaxPermSize=256m

    Where the characters #### should be 2048 or higher (depending on their system load.) Note that a 64-bit application server and JVM are usually necessary for values greater than 2048.

  • If you are using WebLogic, depending on which version of Campaign you are running, you may need to apply a patch (for Weblogic 10gR3). Or, for WebLogic 11gR1, you may need to explode the campaign war file, make certain changes, then rebuild the war file. For details, see the Installation or Upgrade Guide for the version of Unica Campaign that you are running. Also, see the Unica Recommended Software Environments and Minimum System Requirements.

Database

  • Check with your DBA to see if your database is heavily loaded with other applications.
  • Perform database tuning, as described in the Unica Campaign Tuning Guide.
  • Configure database load utilities, as described in the Unica Campaign Administrator's Guide.
  • If you created a new audience level, then your DBA created a table in the Unica Campaign system database to store response history for that audience level. Be sure the new table is indexed to improve performance.

Unica Campaign tools

  • Delete orphaned temp files and tables on the application server. You can use the Unica Campaign cleanup utility (unica_acclean) to identify and then delete all orphaned temporary files and database tables in the current partition. The cleanup utility can be used on both the Unica Campaign system tables database and on user tables databases. For instructions, see the Unica Campaign Administrator's Guide.
  • Use the Unica Campaign Server Manager (unica_svradm) to see if any unnecessary unica_acsvr processes are running in the background. The Status command identifies disconnected or orphaned processes. The kill command (kill -p processid#) removes the unnecessary processes. For a list of available commands and syntax, use the Help command or see the Unica Campaign Administrator's Guide.

Logging

  • Confirm that the logging level is not set to DEBUG in the log4j.properties file for Unica Campaign (<Campaign_home>/conf/campaign_log4j.properties) and Unica Platform (<Platform_home>/conf/log4j.properties).
  • Confirm that the configuration property Campaign|partitions|partition [n]|server| logging|loggingLevels is not set to ALL. This setting generates a large amount of data and therefore is not advisable for production operation.
  • Setting any logging level higher than its default can adversely affect performance.
  • Examine the Unica Campaign log files to identify possible issues. For example, look for warnings that occur repeatedly. There are log files for listeners, the web application, web connections, flowcharts, sessions, and other areas of the application. By default, most log files are in <Campaign_home>/logs and <Campaign_home>/partitions/partition [n]/logs. If you have a clustered listener configuration, additional log files are in the equivalent directories under <campaignSharedHome>. For more information, read about logging administration in the Unica Campaign Administrator's Guide.

Configuration

  • Adjust the performance-related configuration settings as described in the Unica Campaign Tuning Guide.
  • Look at the configuration properties in the Campaign|caching category (for example, offerTemplateDataTTLSeconds) to see how often the cache is refreshed. The default value is 600 (10 minutes). Smaller values result in more frequent cache updates, which can adversely affect performance by consuming processing resources on both the web server and the database. Configuration properties are described in the Unica Campaign Administrator's Guide.

Reports

If you have Cognos reports on your dashboards, be aware that reports require additional processing resources. Performance can become an issue when many users access dashboards that contain many reports on a regular basis. Cognos report portlets are the most resource-intensive.

For improved performance, use Cognos to schedule reports, then configure the portlet in Unica Platform so it uses the schedule. For more information, read about Cognos report performance considerations in the Unica Platform Administrator's Guide.

Flowcharts

  • Use in-database optimization, as described in the Unica Campaign Tuning Guide.
  • Adjust configuration settings that affect flowchart performance, as described in the Unica Campaign Tuning Guide.
  • Consider using the Extract process to select fields from one table and write them out to another table for subsequent processing. The Extract process is designed to pare down a large amount of data to a manageable size for subsequent operations, which can result in performance improvements. For more information, see the Campaign User's Guide.
  • Use the Unica Scheduler instead of the Schedule process in flowcharts. The Unica Scheduler is more efficient, as it does not consume server system resources when the flowchart is not running.

    Use throttling to manage performance when many processes are likely to place high demands on the system. Throttling is based on scheduler groups that you set up on the Settings > Configuration page. You assign a throttling threshold to a group, and associate schedules with that group. For more information, see the Unica Platform Administrator's Guide.

  • Avoid profiling fields whose values are mostly unique, such as the Audience ID field. The Profile feature is more efficient (and useful) on fields with a smaller number of distinct values.

Table mapping

  • Map an audience's segment membership table only if you plan to use that audience in flowcharts or Optimize sessions that use strategic segments. Strategic segments are persistent segments that can be used in multiple flowcharts or sessions. You create strategic segments by running the CreateSeg process in a session flowchart and saving the results. If you are not using strategic segments, do not map the segment membership table. Using strategic segments in Unica Campaign flowcharts or Optimize sessions is optional. If you map the segment membership table, Unica Campaign or Contact Optimization updates the table each time that you run the flowchart or Optimize session. This is unnecessary processing overhead if you are not using strategic segments. For more information, see the Unica Campaign Administrator's Guide.
  • When you map user tables, be aware that the Allow real-time profiling option requires a database query each time a user clicks Profile, which can potentially degrade performance. The Allow real-time profiling option applies to all table fields, not just the checked ones. You can remap a user table to change the profiling characteristics. For details, see the Unica Campaign Administrator's Guide.

Network and components

  • Use network monitoring tools to identify potential issues. For example:

    netstat (network statistics) is a command line tool that displays network connections (both incoming and outgoing), routing tables, and network interface statistics. This utility is available for use on both UNIX and Linux operating systems.

    tracert (Windows) / traceroute (UNIX) is a network diagnostic tool for displaying route paths and measuring delays of packets across a network.

  • Windows Performance Monitor can generate reports on processor, memory, disk and network utilization.
  • If you are using Interact, there is a performance cost if you configure any part of Interact to communicate using SSL. does not recommend configuring Interact to use SSL.
  • You may want to look into the speed of the storage devices or appliance (at both the WebSphere or WebLogic and Application server levels) as this plays a role in performance.
  • As with any application, problems can often be resolved by restarting the software and hardware. Try restarting the listener. Also try restarting the web application server. In some cases, you may need to reboot the physical servers as well.