The throttle feature can slow down traffic to thwart denial of service attacks.
<throttle delay="long"
maxThreads="int"
busyDelay="long"/>
This sample delays every request for a second and limits the number of concurrent clients to five. After 3 seconds of waiting a client gets a timeout if there are no threads left to serve its request.
<serviceProxy port="2000">
<throttle delay="1000" maxThreads="5" busyDelay="3000"/>
<target host="www.predic8.de" />
</serviceProxy>
Name | Required | Default | Description | Example |
---|---|---|---|---|
delay | false | 0 |
If non-zero, delays requests by specified number of milliseconds. | 1000 |
busyDelay | false | 0 |
If a newly incoming request exceeds maxThreads, the interceptor waits the specified number in milliseconds and retries once before aborting the request. | 3000 |
maxThreads | false | 0 |
If non-zero, newly incoming request are aborted if the number of running requests has reached this limit. | 5 |