I am testing the performance of a data streaming system that supports continuous queries.
This is how it works: - There is a polling service which sends data to my system. - As data passes into the system, each query evaluates based on a window of the stream at the current time. - The window slides as data passes in.
My problem is this, when I add more queries to the system, I should expect the throughput to decrease because it can't cope the data rate.
However, I actually observe an increase in throughput.
I can't understand why this is the case and I am guessing that it's something to do with the way the JVM allocates CPU, memory etc.
Can anyone shed any light to my problem?