Rate limit for blitzortung-tracker
The event rate of the tracker software should be limited, when a thunderstorm is nearby to avoid flooding of the central server.
Blueprint information
- Status:
- Complete
- Approver:
- Andreas Würl
- Priority:
- Medium
- Drafter:
- Andreas Würl
- Direction:
- Approved
- Assignee:
- Andreas Würl
- Definition:
- New
- Series goal:
- Accepted for trunk
- Implementation:
- Implemented
- Milestone target:
- 0.9
- Started by
- Andreas Würl
- Completed by
- Andreas Würl
Whiteboard
The events are collected for a certain time (typically for 20 seconds), if the average rate for such a block is too high, the number of events is reduce until their number is below the limit.
Omitting the events with the highest amplitudes should ensure, that weaker signals are favoured.
This could be achieved by the following simple algorithm:
Before sending data the number of events per second is calculated.
If the number of events per second is higher than a given threshold value:
* Sort the events by the peak amplitude.
* Cut off the events which start at index events/s x seconds to transmit up to the event with the highest amplitude.
* Sort the events by the event time.
* Transmit the events to the server.