By default the StreamBase server enqueues a tuple to a dequeuing client within 20 milliseconds after a tuple is ready.
This behavior works well for low-latency applications. Lower settings can have a significant impact on throughput performance for applications that have a high data rate and lots of dequeueing clients.
You may change the behavior of the server to flush the tuples to clients more slowly to allow for more efficient communication. This is a server-side-only setting.
The java property:
streambase.queue-flush-interval controls the behavior. A setting of 0 enqueues tuples to clients as soon as they are available. To improve throughput set this to a positive value. The value is in milliseconds.
For example setting it to 50:
-Dstreambase.queue-flush-interval=50
will cause the server to flush dequeue buffers 20 times a second.
A proper setting is application dependent and the default works well for most applications.