Skip to content

RedisOptions

Brian Lehnen edited this page Nov 3, 2015 · 3 revisions

Redis Options

The Redis transport has a few options, specific to this transport.

The clear expired messages batch limit controls how many messages will be processed in a single execution of the LUA script.

queue.Configuration.Options().ClearExpiredMessagesBatchLimit = 10;

The Move delayed message batch limit controls how many delayed records will be processed in a single exceution of the LUA script.

queue.Configuration.Options().MoveDelayedMessagesBatchLimit = 10;

The Reset heart beat batch limit controls how many dead records will be processed in a single exceution of the LUA script.

queue.Configuration.Options().ResetHeartBeatBatchLimit = 10;

The Delayed processing monintor time setting controls how often the script that moves delayed records will be run. Note that higher values add addtional latancy to delayed messages.

queue.Configuration.Options().DelayedProcessingMonitorTime = TimeSpan.FromSeconds(1);

The redis transport supports a few different ways to obtain the current time

  • From the local machine

The current clock on the machine running the queue will be used to obtain the current time. This should only be used if all machines accessing a queue have in-sync clocks.

  • Redis server

From the redis server itself. If using clustering, all machines in the cluster should have in-sync clocks.

  • NTP client

A NTP client can be used. While this can be a little slow to obtain the time, it provides the safest option if syncing the clients or redis server is not an option.

queue.Configuration.Options().TimeServer = TimeLocations.SntpServer;
Clone this wiki locally