The first part of this chapter presents a general picture about report distribution performance and some high level performance guidelines for getting an increased throughput from the DocumentBurster™ software.
The last section shows a simple, yet powerful, DocumentBurster™ tool for monitoring various report bursting and report delivery performance metrics.
DocumentBurster™ hardware requirements will depend on the volume and the size of the reports which the system is expected to process and distribute. The system can scale in order to support the most demanding report distribution performance requirements.
In most of the situations, DocumentBurster™ should perform well enough on any low-end machine which can decently run Windows XP. However, if your enterprise organization is expected to process really huge reports, it is advisable to allocate a dedicated and powerful machine.
Following are the hardware devices which have an influence on the overall system throughput
The most common scenario will be for DocumentBurster™ to distribute the reports by email. When a big number of reports is required to be distributed in a short period of time, deploying DocumentBurster™ software on the same physical machine with the email server (e.g. Microsoft Exchange) will mostly save the network overhead and will be like a boost for the overall report distribution throughput.
If possible, for email distribution performance reasons, install DocumentBurster™ on the same computer with the email server software (e.g. Microsoft Exchange).
Any intermediate layer which sits in-between DocumentBurster™ and the email server software will pose a performance penalty when the reports are being distributed. For example, a common situation will be with various antivirus/firewall (e.g. Symantec, McAfee) kind of software which might monitor the network transfer from DocumentBurster™ to the email server (e.g. Microsoft Exchange). Such intermediate layers will slow down the network performance and, if email sending performance is a critical requirement, the IT administrator of your organization should check for various approaches to minimize the performance cost of these intermediate layers. The simplest approach would be to decide that all the emails which are sent by DocumentBurster™ are legitimate and do not require additional validation. Another approach might be to configure the antivirus software to do the minimum amount of scanning necessary to meet the security requirements from your organization.
DocumentBurster™ can be deployed and used in a virtual machine. The software is confirmed to run in Oracle VM VirtualBox and Microsoft Hyper-V and should work properly on other virtualization software too. Like any other software, there is a performance penalty when running DocumentBurster™ in a virtual machine as compared with running the software in a native operating system. The network quality, the CPU, Disk I/O and memory performance are the factors which influence the total throughput of the DocumentBurster™ software when running inside a virtual machine.
DocumentBurster™ has a simple, yet powerful, mechanism to monitor various report bursting and report distribution performance metrics. This mechanism can be enabled for tracking, on an ongoing basis, the report bursting and report distribution performance during production.
DocumentBurster™ monitoring system displays the most relevant report bursting and report distribution performance indicators with the help of various graphs which are easy to understand and visualize.
Further more, DocumentBurster™ is publishing the performance metrics in two additional ways which can be used when integrating with professional monitoring tools
In the default installation, DocumentBurster™ does not gather any performance related data. If performance monitoring is required, then DocumentBurster™ should be configured to gather, calculate and publish the performance statistics.
DocumentBurster™
can be enabled to publish
performance metrics by doing the
modification which
is marked as bold to the first line of
config/burst/internal/documentburster.xml
configuration
file.
DocumentBurster™
Server
can be enabled to publish
performance metrics by doing the
modification which
is marked as bold to the first line of
server/config/burst/internal/startServer.xml
configuration
file.
Save the configuration file(s) and run DocumentBurster™ again. Now, everytime a report is being processed, performance metrics will be published in the following two files
logs/performance/statistics.log
- contains the aggregated
performance statistics calculated at
regular time intervals (10 seconds by
default)
logs/performance/graphs.log
- contains
Google Chart Tools
URLs with
DocumentBurster™
performance charts
If configured as such,
DocumentBurster™
will gather run-time performance statistics.
The data is collected
throughout the program execution
and regularly,
at a configurable
time interval (10 seconds by default)
the raw data
is processed to
produce and log aggregated statistics such as mean,
minimum,
maximum, standard deviation and transactions per second
over
a set
time span. If monitoring is enabled, the aggregated
statistics
will
be
available in
logs/performance/statistics.log
log file.
Example of performance statistics log file
If monitoring is enabled, DocumentBurster™ will generate graphs for the average execution time and transactions per second for the following transaction types
The graphs are generated as URLs to Google Chart Server in
logs/performance/graphs.log
log file.
Mean Execution Times (ms)
Transactions Per Second
If performance monitoring is enabled, DocumentBurster™ does expose the performance data using the JMX standard. Exposing DocumentBurster™ performance data using JMX opens up a wide range of functionality, such as:
Visualize report bursting and report distribution performance metrics using JConsole
If required, for more advanced monitoring scenarios, DocumentBurster™ has the technical premises to be integrated with other professional monitoring tools. Such an advanced monitoring tool will allow, for example, to define performance thresholds on DocumentBurster™ metrics and to raise an alert whenever the minimum performance thresholds are not met. Once raised, the alert can be either displayed in a monitoring dashboard using red color or can be sent by email to one or more configured email addresses.
While DocumentBurster™ 's monitoring system is not directly dependent on any, it can be integrated with most of the existing network monitoring platforms such as Nagios, Cacti, Hyperic, Zenoss, SpiceWorks, GroundWork, Zabbix or OpenNMS. If the IT department of your organization has already standardized on using an existing platform for doing system monitoring then it should be possible to add DocumentBurster™ to the list of applications which are closely monitored.
The documentation of the selected monitoring vendor should be consulted in order to find details on how to define and monitor a new application. In general, such tools will allow to fetch the required DocumentBurster™ performance data by either
logs/performance/statistics.log
for the required data.
Google Chart Tools - DocumentBurster™ is displaying the performance charts using Google Charts
JMX - DocumentBurster™ exposes performance metrics through JMX
JConsole - DocumentBurster™ can be monitored using JConsole
Nagios documentation - general documentation useful when monitoring DocumentBurster™ through Nagios
Cacti documentation - general docs useful when using Cacti
Hyperic HQ documentation - Hyperic HQ
Zenoss documentation - Zenoss
Spiceworks - Spiceworks
GroundWork - network and application monitoring software - GroundWork
Zabbix - Monitoring software - Zabbix
OpenNMS - Monitoring software - OpenNMS