on 2014 Apr 05 11:11 AM
In particular, exactly what is the SQL Anywhere network server measuring when it "monitors throughput" as mentioned in this excerpt from Database server configuration of the multiprogramming level? (highlighting added)
"SQL Anywhere network servers can automatically monitor the throughput level of the database server and determine how the multiprogramming level should be adjusted in response to the current workload. The network database server uses a hill-climbing algorithm, as well as a parabola approximation approach, to decide on the adjustment that needs to be made. If an increase in the multiprogramming level results in an increase in the network database server throughput level, then the network database server proceeds with the increase. If the increase in the multiprogramming level results in degradation in throughput, then the network database server lowers the multiprogramming level. The network database server continuously monitors the throughput level and changes the multiprogramming level to improve server throughput. For workloads that consist of short bursts of a large number of requests followed by long idle periods, it is best to set the minimum multiprogramming level to the maximum expected concurrency level. This configuration ensures that the network database server is responsive during the short bursts of requests."
The "throughput" that is measured is the number of worker requests that complete per interval (e.g. within a second). Note: The "worker requests" should not be confused with "client requests" though there is a relationship.
Worker requests are the low level requests that are queued inside the database server. They include such things as client prepare, execute, fetch, insert, delete, etc. statements - the same types of statements that show up in a Request Level Log - but also include processing of database events, checkpoints, and other internal 'stuff' that needs to get done within the database server.
HTH
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Not exactly but close enough.
The 'Req' property (counter) counts the number of requests as they are added to the worker request queue, whereas the 'throughput' algorithm measures the requests as they are taken out of the worker request queue and scheduled to be executed on a worker. So in a steady state system these two measurements would be the same, but they can differ if the unscheduled requests length is growing or diminishing.
User | Count |
---|---|
67 | |
10 | |
10 | |
10 | |
10 | |
8 | |
8 | |
7 | |
5 | |
5 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.