Diffusion .NET Client Library  6.1.5
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties Events Pages
PushTechnology.ClientInterface.Client.Enums.ThrottlerType Class Reference

Specifies a throttler type. More...

Inheritance diagram for PushTechnology.ClientInterface.Client.Enums.ThrottlerType:

Static Public Attributes

static readonly ThrottlerType UNTHROTTLED = new ThrottlerType( ThrottlerTypeEnum.UNTHROTTLED, 0 )
 The queue is unthrottled on a 'messages per second' basis. More...
 
static readonly ThrottlerType MESSAGES_PER_SECOND
 The Client is throttled on a 'messages per second' basis. More...
 
static readonly ThrottlerType BYTES_PER_SECOND = new ThrottlerType( ThrottlerTypeEnum.BYTES_PER_SECOND, 2 )
 The Client is throttled on a 'bytes per second' basis. More...
 
static readonly ThrottlerType MESSAGE_INTERVAL = new ThrottlerType( ThrottlerTypeEnum.MESSAGE_INTERVAL, 3 )
 The Client is throttled on a 'Message Interval' basis. More...
 
static readonly ThrottlerType BUFFER_INTERVAL = new ThrottlerType( ThrottlerTypeEnum.BUFFER_INTERVAL, 4 )
 The Client is throttled to a full output buffer every interval. More...
 

Detailed Description

Specifies a throttler type.

Member Data Documentation

readonly ThrottlerType PushTechnology.ClientInterface.Client.Enums.ThrottlerType.BUFFER_INTERVAL = new ThrottlerType( ThrottlerTypeEnum.BUFFER_INTERVAL, 4 )
static

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.

readonly ThrottlerType PushTechnology.ClientInterface.Client.Enums.ThrottlerType.BYTES_PER_SECOND = new ThrottlerType( ThrottlerTypeEnum.BYTES_PER_SECOND, 2 )
static

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.

readonly ThrottlerType PushTechnology.ClientInterface.Client.Enums.ThrottlerType.MESSAGE_INTERVAL = new ThrottlerType( ThrottlerTypeEnum.MESSAGE_INTERVAL, 3 )
static

The Client is throttled on a 'Message Interval' basis.

This means that messages are sent out with a fixed interval between them. e.g. 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 minimise the queue size.

readonly ThrottlerType PushTechnology.ClientInterface.Client.Enums.ThrottlerType.MESSAGES_PER_SECOND
static
Initial value:
=
new ThrottlerType( ThrottlerTypeEnum.MESSAGES_PER_SECOND, 1 )

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.

readonly ThrottlerType PushTechnology.ClientInterface.Client.Enums.ThrottlerType.UNTHROTTLED = new ThrottlerType( ThrottlerTypeEnum.UNTHROTTLED, 0 )
static

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.


The documentation for this class was generated from the following file: