sidekiq-ultimate 0.0.1.alpha.10 → 0.0.1.alpha.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f681de90091be58fe7928ce4d28f41e043f54111af410c8812fdefb299bbb0b2
4
- data.tar.gz: 1bed9ee7e1deaa2b386c9d8e8c01b175d5c0f63277f87ae5aa3b8f401a1eb028
3
+ metadata.gz: 33e4535ed671818341e55b1fe091c0736331d4152acf9c49edcf8f71c92a306f
4
+ data.tar.gz: da8bf95cef9b131eb6999f4852f21dea3d5f90e93739b46fe4b1c785f4bca7dd
5
5
  SHA512:
6
- metadata.gz: 60d70a4e7be275ead2d40da9f79e89170f728b596d91abf6b3e6d31737954ab857e0d7dc9933001bb0473af1e1e1d4888642482a0863f0f3e78da473d988e937
7
- data.tar.gz: 8802a4eeace26db84a5a3199909e289c971cfd35d1c584d37fa30bdadec349451e5a247cab00fa504c35db3e531252d77149ea5930507546a64601e1f3d34f88
6
+ metadata.gz: 83c3c9c7e5525dbe9d7a0f327613c59b563286f81f030d3ab07f886a500c46fa16d9c2b45713d4470ccf5ad184728252d26cbb7d0ad355c6ab3b418cf3afac86
7
+ data.tar.gz: a5ab4d60f1c45e7c7cc61e4f00567b80607dfbb408766392299251fbe9e03af39ae15d9a5dffb0a752b80cc1faad17b02861213b3bc7fdd88a50c473b4e354a8
@@ -24,29 +24,12 @@ module Sidekiq
24
24
  private_constant :LOCK_KEY
25
25
 
26
26
  class << self
27
- # rubocop: disable Metrics/MethodLength
28
27
  def setup!
29
- ctulhu = nil
30
- monitor = nil
31
-
32
28
  @identity = Object.new.tap { |o| o.extend Sidekiq::Util }.identity
33
29
 
34
- Sidekiq.on(:startup) do
35
- options = { :run_now => true, :execution_interval => 60 }
36
- ctulhu = Concurrent::TimerTask.execute(options) { resurrect! }
37
- end
38
-
39
- Sidekiq.on(:heartbeat) do
40
- options = { :run_now => true, :execution_interval => 5 }
41
- monitor = Concurrent::TimerTask.execute(options) { defibrillate! }
42
- end
43
-
44
- Sidekiq.on(:shutdown) do
45
- monitor&.shutdown
46
- ctulhu&.shutdown
47
- end
30
+ register_aed!
31
+ call_cthulhu!
48
32
  end
49
- # rubocop: enable Metrics/MethodLength
50
33
 
51
34
  def resurrect!
52
35
  lock do
@@ -64,6 +47,36 @@ module Sidekiq
64
47
 
65
48
  private
66
49
 
50
+ def call_cthulhu!
51
+ cthulhu = nil
52
+
53
+ Sidekiq.on(:startup) do
54
+ cthulhu&.shutdown
55
+
56
+ cthulhu = Concurrent::TimerTask.execute({
57
+ :run_now => true,
58
+ :execution_interval => 60
59
+ }) { resurrect! }
60
+ end
61
+
62
+ Sidekiq.on(:shutdown) { cthulhu&.shutdown }
63
+ end
64
+
65
+ def register_aed!
66
+ aed = nil
67
+
68
+ Sidekiq.on(:heartbeat) do
69
+ aed&.shutdown
70
+
71
+ aed = Concurrent::TimerTask.execute({
72
+ :run_now => true,
73
+ :execution_interval => 5
74
+ }) { defibrillate! }
75
+ end
76
+
77
+ Sidekiq.on(:shutdown) { aed&.shutdown }
78
+ end
79
+
67
80
  def defibrillate!
68
81
  Sidekiq.redis do |redis|
69
82
  log(:debug) { "Defibrillating" }
@@ -3,6 +3,6 @@
3
3
  module Sidekiq
4
4
  module Ultimate
5
5
  # Gem version.
6
- VERSION = "0.0.1.alpha.10"
6
+ VERSION = "0.0.1.alpha.11"
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq-ultimate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.alpha.10
4
+ version: 0.0.1.alpha.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexey Zapparov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-03-13 00:00:00.000000000 Z
11
+ date: 2018-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: concurrent-ruby