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