class Fluent::Plugin::KinesisHelper::API::BatchRequest::Backoff

Public Class Methods

new() click to toggle source
# File lib/fluent/plugin/kinesis_helper/api.rb, line 226
def initialize
  @count = 0
end

Public Instance Methods

next() click to toggle source
# File lib/fluent/plugin/kinesis_helper/api.rb, line 230
def next
  value = calc(@count)
  @count += 1
  value
end
reset() click to toggle source
# File lib/fluent/plugin/kinesis_helper/api.rb, line 236
def reset
  @count = 0
end

Private Instance Methods

calc(count) click to toggle source
# File lib/fluent/plugin/kinesis_helper/api.rb, line 242
def calc(count)
  (2 ** count) * scaling_factor
end
scaling_factor() click to toggle source
# File lib/fluent/plugin/kinesis_helper/api.rb, line 246
def scaling_factor
  0.3 + (0.5-rand) * 0.1
end