rocketjob 3.0.0.beta → 3.0.0.beta2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/rocket_job/config.rb +1 -1
- data/lib/rocket_job/heartbeat.rb +2 -5
- data/lib/rocket_job/performance.rb +1 -1
- data/lib/rocket_job/plugins/document.rb +1 -1
- data/lib/rocket_job/plugins/job/model.rb +1 -0
- data/lib/rocket_job/server.rb +6 -6
- data/lib/rocket_job/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8e79fbd2ab361a944bd653f0f8f614aa0cb8f951
|
4
|
+
data.tar.gz: 79b67d6410a552e521dd89964103fef4400c4dee
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 54c2021c45ace9f90b646db94edbe54863f70b9eb6397bc6f8204842422cbc22b287c3d685397a219f53dd462b388d589dd7dbb28af6b2add95894c4cd8029f5
|
7
|
+
data.tar.gz: c5e18971e9c434ea64901dfe377cea4ea92685ef9d1b9c445bc37a3f43830edf15ae42e4edf23bb481576fb9557f420136d1617c48603ef75a962c406ede9986
|
data/lib/rocket_job/config.rb
CHANGED
@@ -26,7 +26,7 @@ module RocketJob
|
|
26
26
|
#
|
27
27
|
|
28
28
|
# The maximum number of workers to create on any one server
|
29
|
-
field :
|
29
|
+
field :max_workers, type: Integer, default: 10
|
30
30
|
|
31
31
|
# Number of seconds between heartbeats from a Rocket Job Server process
|
32
32
|
field :heartbeat_seconds, type: Integer, default: 15
|
data/lib/rocket_job/heartbeat.rb
CHANGED
@@ -9,11 +9,8 @@ module RocketJob
|
|
9
9
|
# Time of the last heartbeat received from this server
|
10
10
|
field :updated_at, type: Time
|
11
11
|
|
12
|
-
# Number of
|
13
|
-
field :
|
14
|
-
# Number of threads in the pool
|
15
|
-
# This number should grow and shrink between 1 and :max_workers
|
16
|
-
field :current_threads, type: Integer
|
12
|
+
# Number of workers started.
|
13
|
+
field :workers, type: Integer
|
17
14
|
|
18
15
|
#
|
19
16
|
# Process Information. Future.
|
@@ -23,7 +23,7 @@ module RocketJob
|
|
23
23
|
RocketJob::Server.running.each do |worker_process|
|
24
24
|
unless worker_process.zombie?
|
25
25
|
self.worker_processes += 1
|
26
|
-
self.worker_threads += worker_process.heartbeat.
|
26
|
+
self.worker_threads += worker_process.heartbeat.workers
|
27
27
|
end
|
28
28
|
end
|
29
29
|
puts "Running: #{worker_threads} workers, distributed across #{worker_processes} processes"
|
@@ -72,7 +72,7 @@ module RocketJob
|
|
72
72
|
if doc = collection.find(_id: id).find_one_and_update({'$set' => attrs}, return_document: :after)
|
73
73
|
# Clear out keys that are not returned during the reload from MongoDB
|
74
74
|
(fields.keys + embedded_relations.keys - doc.keys).each { |key| send("#{key}=", nil) }
|
75
|
-
@attributes =
|
75
|
+
@attributes = doc
|
76
76
|
apply_defaults
|
77
77
|
self
|
78
78
|
else
|
data/lib/rocket_job/server.rb
CHANGED
@@ -38,7 +38,7 @@ module RocketJob
|
|
38
38
|
|
39
39
|
# The maximum number of workers this server should start
|
40
40
|
# If set, it will override the default value in RocketJob::Config
|
41
|
-
field :max_workers, type: Integer, default: -> { Config.instance.
|
41
|
+
field :max_workers, type: Integer, default: -> { Config.instance.max_workers }
|
42
42
|
|
43
43
|
# When this server process was started
|
44
44
|
field :started_at, type: Time
|
@@ -223,7 +223,7 @@ module RocketJob
|
|
223
223
|
# Management Thread
|
224
224
|
def run
|
225
225
|
logger.info "Using MongoDB Database: #{RocketJob::Job.collection.database.name}"
|
226
|
-
build_heartbeat(updated_at: Time.now,
|
226
|
+
build_heartbeat(updated_at: Time.now, workers: 0)
|
227
227
|
started!
|
228
228
|
adjust_workers(true)
|
229
229
|
logger.info "RocketJob Server started with #{workers.size} workers running"
|
@@ -232,8 +232,8 @@ module RocketJob
|
|
232
232
|
sleep Config.instance.heartbeat_seconds
|
233
233
|
|
234
234
|
find_and_update(
|
235
|
-
'heartbeat.updated_at'
|
236
|
-
'heartbeat.
|
235
|
+
'heartbeat.updated_at' => Time.now,
|
236
|
+
'heartbeat.workers' => worker_count
|
237
237
|
)
|
238
238
|
|
239
239
|
# In case number of threads has been modified
|
@@ -255,8 +255,8 @@ module RocketJob
|
|
255
255
|
# Timeout waiting for worker to stop
|
256
256
|
begin
|
257
257
|
find_and_update(
|
258
|
-
'heartbeat.updated_at'
|
259
|
-
'heartbeat.
|
258
|
+
'heartbeat.updated_at' => Time.now,
|
259
|
+
'heartbeat.workers' => worker_count
|
260
260
|
)
|
261
261
|
rescue Mongoid::Errors::DocumentNotFound
|
262
262
|
logger.warn('Server has been destroyed. Going down hard!')
|
data/lib/rocket_job/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rocketjob
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.0.
|
4
|
+
version: 3.0.0.beta2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Reid Morrison
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-11-
|
11
|
+
date: 2016-11-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: concurrent-ruby
|