Skip to main content
Version: Next

Throughput Monitor


Description

The Throughput Monitor processor calculates and reports event processing throughput statistics. It:

  • Measures event processing rates
  • Tracks batch processing windows
  • Calculates events per second
  • Provides detailed timing information

Required Input

The processor works with any input event stream, as it focuses on measuring event flow rather than event content.


Configuration

Batch Window Size

Specifies the number of events that should be collected before calculating throughput statistics. This determines:

  • How frequently throughput is calculated
  • The granularity of the measurements
  • The trade-off between accuracy and reporting frequency

Output

The processor outputs a new event containing:

  • timestamp: Current system timestamp
  • starttime: Start time of the batch window
  • endtime: End time of the batch window
  • duration: Duration of the batch window in milliseconds
  • eventcount: Number of events processed in the window
  • throughput: Events per second (calculated as eventcount / (duration/1000))

Example

Input Events (3 events with batch size 3)

{
"sensorValue": 42,
"timestamp": 1586380104915
}
{
"sensorValue": 43,
"timestamp": 1586380105015
}
{
"sensorValue": 44,
"timestamp": 1586380105115
}

Configuration

  • Batch Window Size: 3

Output Event

{
"timestamp": 1586380105115,
"starttime": 1586380104915,
"endtime": 1586380105115,
"duration": 200,
"eventcount": 3,
"throughput": 15.0
}

Use Cases

  1. Performance Monitoring

    • Monitor pipeline throughput
    • Track processing rates
    • Identify bottlenecks
    • Measure system performance
  2. Load Testing

    • Measure processing capacity
    • Test system limits
    • Validate performance
    • Benchmark improvements
  3. Resource Planning

    • Estimate resource needs
    • Plan capacity
    • Optimize configurations
    • Scale infrastructure

Notes

  • The processor uses a sliding window approach
  • Throughput is calculated as events per second
  • All timing is in milliseconds
  • The batch window size affects measurement granularity
  • Events are counted as they arrive
  • The processor resets after each batch window