Nirvana VBA : Nirvana RTD Server Internal Queues

High/Low Watermark

As mentioned in How RTD Works, if Excel is in a busy state it will not request any data from the Nirvana RTD Server. Rather than drop events, the Nirvana RTD server will continue to push all events onto internal event queues.

If events are rapidly published onto a channel or Excel remains in a busy state indefinitely (if a dialog box is not responed to), without the high/low watermark mechanism, the queues would continue to grow and use system resources.

The watermarks refer to the queue length and can be set per channel using the RTD function. Once the event queue length for a particular channel reaches the high watermark, any incoming events will be caused to wait which will trigger flow control handled by Nirvana. Once events are popped off the queue and the queue length reaches the low watermark, the incoming events will be notified to continue and then event queue will begin to refill.