sidekiq-heroku-scaler 0.1.0 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 652123c97be79746c8c9266fb67547fc6c7878406a6dd313ed9de147473f6c93
4
- data.tar.gz: 4e0a7e9eb222d13ba63a20ddad66675c89dffcf31dd21b5c373206628a63e6db
3
+ metadata.gz: cd6555ed85d38c9ae7d8aa23b933b7da839ad5c13bfa9717b010eb807a9628e4
4
+ data.tar.gz: 1f17a01f45c5903ec90be77932e94d1cd2e944cd24639ecccfe7d8500ddf94ee
5
5
  SHA512:
6
- metadata.gz: 607de29a191e9bd2ece43741fc606733d0d8da6f493745da965d05f61189e5bce4eaacb8b73eb3abce482475311c5bad403147cecc2c5b4d7038353649c5bcc3
7
- data.tar.gz: 6c82485a0013553f3f31434d0efa9e0e4a6ab28f3de08977fbf8673791361e6f2a2767367220e42a2db9adab070e5698016081deee130911d3962ac678253fdb
6
+ metadata.gz: 7e37e11e9aa1f87b548c93f2ee1f047e399c7ce434ed1fe30c66c92c0023a34331578dfab80395105eae758ed40a6a508d394989428686a57fae9aee57d39d3b
7
+ data.tar.gz: 0aa1fdd33ab3f533a6072c98e9d654661b53effcf68315315f5a0e345729cd67eb6ab8150671e5513bba8410b5ba0a0c105b5e6535c9c3eaadacdb749eb1d9e8
data/.gitignore CHANGED
@@ -12,4 +12,5 @@
12
12
 
13
13
  .idea
14
14
  .ruby-gemset
15
- .ruby-version
15
+ .ruby-version
16
+ *.gem
data/README.md CHANGED
@@ -28,7 +28,9 @@ scale_strategy = SidekiqHerokuScaler::Strategy::Latency.new(
28
28
  min_dynos_count: 1,
29
29
  max_dynos_count: 10,
30
30
  max_latency: 5.minutes.to_i,
31
- min_latency: 1.minute.to_i
31
+ min_latency: 1.minute.to_i,
32
+ inc_count: 2, # default 1
33
+ dec_count: 2 # default 1
32
34
  )
33
35
  ```
34
36
  or
@@ -30,9 +30,9 @@ module SidekiqHerokuScaler
30
30
 
31
31
  def process_formation(sidekiq_worker)
32
32
  if strategy.increase?(sidekiq_worker)
33
- heroku_client.update_formation(sidekiq_worker.formation_id, sidekiq_worker.quantity + 1)
33
+ heroku_client.update_formation(sidekiq_worker.formation_id, sidekiq_worker.quantity + strategy.inc_count)
34
34
  elsif strategy.decrease?(sidekiq_worker)
35
- heroku_client.update_formation(sidekiq_worker.formation_id, sidekiq_worker.quantity - 1)
35
+ heroku_client.update_formation(sidekiq_worker.formation_id, sidekiq_worker.quantity - strategy.dec_count)
36
36
  end
37
37
  end
38
38
 
@@ -3,11 +3,17 @@
3
3
  module SidekiqHerokuScaler
4
4
  module Strategy
5
5
  class Latency
6
- def initialize(min_dynos_count:, max_dynos_count:, max_latency:, min_latency:)
6
+ attr_reader :inc_count, :dec_count
7
+
8
+ def initialize(min_dynos_count:, max_dynos_count:,
9
+ max_latency:, min_latency:,
10
+ inc_count: nil, dec_count: nil)
7
11
  @min_dynos_count = min_dynos_count
8
12
  @max_dynos_count = max_dynos_count
9
13
  @max_latency = max_latency
10
14
  @min_latency = min_latency
15
+ @inc_count = (inc_count || 1).to_i
16
+ @dec_count = (dec_count || 1).to_i
11
17
  end
12
18
 
13
19
  def increase?(sidekiq_worker)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SidekiqHerokuScaler
4
- VERSION = '0.1.0'
4
+ VERSION = '0.1.3'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq-heroku-scaler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vital Ryabchinskiy
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-12-30 00:00:00.000000000 Z
11
+ date: 2019-09-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -139,8 +139,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
139
139
  - !ruby/object:Gem::Version
140
140
  version: '0'
141
141
  requirements: []
142
- rubyforge_project:
143
- rubygems_version: 2.7.6
142
+ rubygems_version: 3.0.6
144
143
  signing_key:
145
144
  specification_version: 4
146
145
  summary: Sidekiq Heroku Scaler