worker_killer 1.2.0.338611 → 1.2.0.338621
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 +4 -4
- data/lib/worker_killer/puma_plugin.rb +9 -3
- data/lib/worker_killer/puma_plugin_ng.rb +10 -4
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6f3758d4c59f7b67b1e192b8b149fd4aaa75d5c59a38a84e383b81f880d79a6f
|
|
4
|
+
data.tar.gz: c7e213769c4d8a8cc353f553d8bd54708a165b9a35a8449a78ac7645db2e7057
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0a4f774386b7e100529bca0a1139c61815e4094c76829f22c804618ffc7d8fb32d0eea26d17e4c3324181c2a430a1c6f681d5a3e996cfed168f8ba2f861a180e
|
|
7
|
+
data.tar.gz: 1b2e22041497860bf61f0f21d8bbe0d2d7253018405a974d1283462649a80029a531cb64f3c2db6674044b0f75a6eb35181017c5bbec2c80dec3f14db5da9986
|
|
@@ -45,10 +45,10 @@ module WorkerKiller
|
|
|
45
45
|
|
|
46
46
|
cb = if dsl.respond_to?(:before_worker_boot)
|
|
47
47
|
:before_worker_boot
|
|
48
|
-
else
|
|
48
|
+
else
|
|
49
49
|
:on_worker_boot
|
|
50
50
|
end
|
|
51
|
-
|
|
51
|
+
|
|
52
52
|
dsl.send(cb) do |num|
|
|
53
53
|
@killer.worker_num = num
|
|
54
54
|
@worker_num = num
|
|
@@ -65,7 +65,13 @@ module WorkerKiller
|
|
|
65
65
|
log "Initializing IPC: #{@ipc_path}"
|
|
66
66
|
@runner = launcher.instance_variable_get('@runner')
|
|
67
67
|
|
|
68
|
-
launcher.events.
|
|
68
|
+
cb = if launcher.events.respond_to?(:after_booted)
|
|
69
|
+
:after_booted
|
|
70
|
+
else
|
|
71
|
+
:on_booted
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
launcher.events.send(cb) do
|
|
69
75
|
@thread ||= start_ipc_listener
|
|
70
76
|
end
|
|
71
77
|
end
|
|
@@ -47,7 +47,13 @@ module WorkerKiller
|
|
|
47
47
|
@debug = true
|
|
48
48
|
end
|
|
49
49
|
|
|
50
|
-
dsl.before_worker_boot
|
|
50
|
+
cb = if dsl.respond_to?(:before_worker_boot)
|
|
51
|
+
:before_worker_boot
|
|
52
|
+
else
|
|
53
|
+
:on_worker_boot
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
dsl.send(cb) do |num|
|
|
51
57
|
@killer.worker_num = num
|
|
52
58
|
@worker_num = num
|
|
53
59
|
@tag = nil
|
|
@@ -87,7 +93,7 @@ module WorkerKiller
|
|
|
87
93
|
return if @worker_num != worker_num
|
|
88
94
|
|
|
89
95
|
cnt = inhibited[worker_num] += 1 # just increase inhibit counter
|
|
90
|
-
|
|
96
|
+
debug("Worker inhibition increased: #{cnt}")
|
|
91
97
|
end
|
|
92
98
|
|
|
93
99
|
# Этот метод зовётся из Middleware внтури воркера
|
|
@@ -95,11 +101,11 @@ module WorkerKiller
|
|
|
95
101
|
return if @worker_num != worker_num
|
|
96
102
|
|
|
97
103
|
cnt = inhibited[worker_num] -= 1 # just decrease inhibit counter
|
|
98
|
-
|
|
104
|
+
debug("Worker inhibition decreased: #{cnt}")
|
|
99
105
|
return unless cnt <= 0
|
|
100
106
|
|
|
101
107
|
inhibited.delete(worker_num)
|
|
102
|
-
|
|
108
|
+
debug('Worker released')
|
|
103
109
|
do_kill('RELEASE') if @force_restart
|
|
104
110
|
end
|
|
105
111
|
|