basicjrpc 0.1.37 → 0.1.38

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
  SHA1:
3
- metadata.gz: 72cd2ade2cee4330644c8b99ec8b174abab77af7
4
- data.tar.gz: d62b247910c40fc9770c20789e6a5d55aeda1047
3
+ metadata.gz: 3a2ddcbc80ba7e3010ee992cae5370bf21c4ab06
4
+ data.tar.gz: c5a2db033e7509fdd1743fe107627368d5c40129
5
5
  SHA512:
6
- metadata.gz: 629a3c959e19b9f45c05a77da513ea5360106a555b67132185f286e8da0b5f37e93478804aa31ac94ea4b69f1a80fee8b7ecb53ffa46b82ae1e3315ecaae458c
7
- data.tar.gz: eaa61291b718c0499033d4dd0e134245bcd46e27bfb9e80f1764077418d3e84bd8ad7273826a3f0b37b4c70bc3d75bc4bbef0a834757571488e20b158436602c
6
+ metadata.gz: 710b6d4d405e5285fc824933e2f55744a1d5813668679d3a0dbf6b0ee3562e94ee0967b08a1d1e5d2f3d6c792d84efc57829780d7354aafa42b0a11cc9b812cd
7
+ data.tar.gz: 7e450d97027206cac35f1b446b7c555d9cf4b05be53c782e2f978d0f5e29f9b6d30ed9f2ce35268818c4ca78706d0430da1fa40e620f95b26f6ea6c896f48be6
@@ -21,7 +21,6 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.add_development_dependency "bundler", "~> 1.11"
23
23
  spec.add_development_dependency "rake", "~> 10.0"
24
- spec.add_runtime_dependency 'nsq-ruby'
25
24
  spec.add_runtime_dependency 'redis'
26
25
  spec.add_runtime_dependency 'oj'
27
26
  spec.add_runtime_dependency 'require_all'
@@ -15,7 +15,8 @@ module BasicJRPC
15
15
  @payload = {}
16
16
  @timeout = timeout
17
17
  @instance_id = SecureRandom.uuid
18
- @nsq_producer = Nsq::Producer.new(nsqd: 'dockerlb:4150', topic: @queue)
18
+ #@nsq_producer = Nsq::Producer.new(nsqd: 'dockerlb:4150', topic: @queue)
19
+ @redis = Redis.new(host: "redis")
19
20
  end
20
21
 
21
22
  def method_missing(m, *args, &block)
@@ -30,19 +31,20 @@ module BasicJRPC
30
31
  my_message = false
31
32
 
32
33
  puts "Writing Message #{payload[:message_id]} #{payload[:method_name]}"
33
- @nsq_producer.write(Oj.dump(payload))
34
+ #@nsq_producer.write(Oj.dump(payload))
35
+ @redis.rpush(@queue, Oj.dump(payload))
34
36
 
35
37
  Timeout::timeout(5) {
36
38
  Oj.load(Redis.new(host: "redis").blpop(payload[:message_id])[1])
37
39
  }
38
40
  rescue Exception => e
39
- terminate
41
+ #terminate
40
42
  raise e
41
43
  end
42
44
 
43
45
  # This must be called
44
46
  def terminate
45
- @nsq_producer.terminate
47
+ #@nsq_producer.terminate
46
48
  end
47
49
  end
48
50
 
@@ -52,9 +54,10 @@ module BasicJRPC
52
54
  payload[:message_id] = SecureRandom.uuid
53
55
  payload[:response] = true
54
56
  payload[:caller] = caller.first(10)
55
- @nsq_producer.write(Oj.dump(payload))
57
+ #@nsq_producer.write(Oj.dump(payload))
58
+ @redis.rpush(@queue, Oj.dump(payload))
56
59
  rescue Exception => e
57
- terminate
60
+ #terminate
58
61
  raise e
59
62
  end
60
63
  end
@@ -4,30 +4,36 @@ module BasicJRPC
4
4
  def initialize queue, injected_class
5
5
  @injected_class = injected_class
6
6
  @queue = queue
7
- @nsq_consumer = Nsq::Consumer.new(nsqlookupd: 'dockerlb:4161', topic: @queue, channel: 'server')
7
+ #@nsq_consumer = Nsq::Consumer.new(nsqlookupd: 'dockerlb:4161', topic: @queue, channel: 'server')
8
+ @redis = Redis.new(host: "redis")
8
9
  end
9
10
 
10
11
  def listen
11
12
  puts "Listening..."
12
13
  while true
13
- message = @nsq_consumer.pop
14
+ redis_response = @redis.brpop(@queue, { :timeout => 10 })
15
+ next if redis_response.nil?
16
+ message = redis_response[1]
17
+
18
+ #message = @nsq_consumer.pop
19
+
14
20
  payload = Oj.load(message.body)
15
21
  puts "Processing message #{payload.message_id} #{payload.method_name} #{payload.method_arguments} #{payload.callers}"
16
22
 
17
23
  # Should always return a data object
18
24
  response = @injected_class.send(payload.method_name, *payload.method_arguments)
19
25
 
20
- Redis.new(host: "redis").rpush(payload.message_id, Oj.dump(response))
21
- message.finish
26
+ @redis.rpush(payload.message_id, Oj.dump(response))
27
+ #message.finish
22
28
  end
23
29
  rescue Exception => e
24
- message.finish
25
- terminate
30
+ #message.finish
31
+ #terminate
26
32
  raise e
27
33
  end
28
34
 
29
35
  def terminate
30
- @nsq_consumer.terminate
36
+ #@nsq_consumer.terminate
31
37
  end
32
38
 
33
39
  end
@@ -1,3 +1,3 @@
1
1
  module BasicJRPC
2
- VERSION = "0.1.37"
3
- end
2
+ VERSION = "0.1.38"
3
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: basicjrpc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.37
4
+ version: 0.1.38
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Simpson
@@ -38,20 +38,6 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '10.0'
41
- - !ruby/object:Gem::Dependency
42
- name: nsq-ruby
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: redis
57
43
  requirement: !ruby/object:Gem::Requirement