Class ThrottlerType
Specifies a throttler type.
Inheritance
Inherited Members
Namespace: PushTechnology.ClientInterface.Client.Enums
Assembly: Diffusion.Client.dll
Syntax
public class ThrottlerType : ByteCodeEnum<ThrottlerType>
Fields
BUFFER_INTERVAL
The Client is throttled to a full output buffer every interval.
This means that the number of bytes that fill a full buffer are output every period (specified in milliseconds). The number of bytes is therefore determined by the size of the output buffer specified by the Client connector. The Throttler limit indicates the period between messages measured in milliseconds (so 5000 for one message every 5 seconds).
Note that output buffers are filled from the client queue until no more messages can be added in which case, depending upon message sizes the average rate per second would be less than the actual buffer size. When buffers are not filled then the throttler may allow several sends in the specified interval until more than the buffer size has been sent, in which case more than the buffer size could be sent in a single interval.
Declaration
public static readonly ThrottlerType BUFFER_INTERVAL
Field Value
Type | Description |
---|---|
ThrottlerType |
BYTES_PER_SECOND
The Client is throttled on a 'bytes per second' basis.
This means that the Throttler will restrict the maximum number of bytes per second that can be sent to the Client. The Throttler limit will indicate the number of bytes per second.
Declaration
public static readonly ThrottlerType BYTES_PER_SECOND
Field Value
Type | Description |
---|---|
ThrottlerType |
MESSAGE_INTERVAL
The Client is throttled on a 'Message Interval' basis.
This means that messages are sent out with a fixed interval between them. for example one message every 5 seconds. The Throttler limit indicates the period between messages measured in milliseconds (so 5000 for one message every 5 seconds).
This type of throttling can lead to a significant backlog of messages on the Client queue therefore it is recommended that it is only used along with conflation in order to minimize the queue size.
Declaration
public static readonly ThrottlerType MESSAGE_INTERVAL
Field Value
Type | Description |
---|---|
ThrottlerType |
MESSAGES_PER_SECOND
The Client is throttled on a 'messages per second' basis.
This means that the Throttler will restrict the maximum number of messages per second that can be sent to the Client. The Throttler limit will indicate the number of messages per second.
Declaration
public static readonly ThrottlerType MESSAGES_PER_SECOND
Field Value
Type | Description |
---|---|
ThrottlerType |
UNTHROTTLED
The queue is unthrottled on a 'messages per second' basis.
The throttler will restrict the maximum number of messages per second that can be sent to the client. The throttling limit controls the number of messages per second.
Declaration
public static readonly ThrottlerType UNTHROTTLED
Field Value
Type | Description |
---|---|
ThrottlerType |