sqs_buffer 0.3.5 → 0.3.6
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/benchmark/spike.rb +24 -0
- data/lib/sqs_buffer/client.rb +4 -1
- data/lib/sqs_buffer/version.rb +1 -1
- metadata +24 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 64711db4524d53087428cf596cba34f0dd3c768f
|
4
|
+
data.tar.gz: 1514233466a682cd48279469e8d08ee3b86a2518
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: eeda9c55fbf62d7635bd7782e0b8663d0e43bda2116c0878dae735e216084e996b3054eb7e3589bf1b44d277fbf2307d3e51cdd8cbbe83ca285f4a90d2c93277
|
7
|
+
data.tar.gz: 415a5c2cee87155e3c8c61639961deedce75de32c61c4aaf61347be77f4e4236d805b1694b49390ecd726d2f70c4bf0705e80b946649570cf5fa94c0904b3a42
|
data/benchmark/spike.rb
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
require 'pry'
|
2
|
+
require 'benchmark'
|
3
|
+
require 'concurrent'
|
4
|
+
|
5
|
+
@message_queue = Concurrent::Array.new
|
6
|
+
10000.times { @message_queue << Class.new }
|
7
|
+
|
8
|
+
1.times do
|
9
|
+
Benchmark.bmbm do |x|
|
10
|
+
x.report("reader") { 100000.times { @message_queue } }
|
11
|
+
end
|
12
|
+
|
13
|
+
Benchmark.bmbm do |x|
|
14
|
+
x.report("dup") { 100000.times { @message_queue.dup } }
|
15
|
+
end
|
16
|
+
|
17
|
+
Benchmark.bmbm do |x|
|
18
|
+
# This is super slow.....
|
19
|
+
x.report("internal dup") { 100.times { @message_queue.map(&:dup) } }
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
23
|
+
|
24
|
+
|
data/lib/sqs_buffer/client.rb
CHANGED
@@ -74,7 +74,10 @@ module SqsBuffer
|
|
74
74
|
|
75
75
|
def buffer
|
76
76
|
# Return a copy of the array events to guard against potential mutation
|
77
|
-
|
77
|
+
# This fails on jruby 9000 for some reason....
|
78
|
+
# Marshal.load( Marshal.dump(@message_queue) )
|
79
|
+
# Should we dup all items? look at benchmark :(
|
80
|
+
@message_queue.dup
|
78
81
|
end
|
79
82
|
|
80
83
|
def shutting_down?
|
data/lib/sqs_buffer/version.rb
CHANGED
metadata
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sqs_buffer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Thomas
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-05-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
15
15
|
requirements:
|
16
|
-
- - ~>
|
16
|
+
- - "~>"
|
17
17
|
- !ruby/object:Gem::Version
|
18
18
|
version: '2.2'
|
19
19
|
name: aws-sdk
|
@@ -21,13 +21,13 @@ dependencies:
|
|
21
21
|
type: :runtime
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - ~>
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '2.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
29
29
|
requirements:
|
30
|
-
- - ~>
|
30
|
+
- - "~>"
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: '1.0'
|
33
33
|
name: concurrent-ruby
|
@@ -35,13 +35,13 @@ dependencies:
|
|
35
35
|
type: :runtime
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - ~>
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '1.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
|
-
- -
|
44
|
+
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
46
|
version: '0'
|
47
47
|
name: bundler
|
@@ -49,13 +49,13 @@ dependencies:
|
|
49
49
|
type: :development
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
57
57
|
requirements:
|
58
|
-
- -
|
58
|
+
- - ">="
|
59
59
|
- !ruby/object:Gem::Version
|
60
60
|
version: '0'
|
61
61
|
name: rake
|
@@ -63,13 +63,13 @@ dependencies:
|
|
63
63
|
type: :development
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
requirement: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
|
-
- -
|
72
|
+
- - ">="
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: '0'
|
75
75
|
name: rspec
|
@@ -77,13 +77,13 @@ dependencies:
|
|
77
77
|
type: :development
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
requirement: !ruby/object:Gem::Requirement
|
85
85
|
requirements:
|
86
|
-
- -
|
86
|
+
- - ">="
|
87
87
|
- !ruby/object:Gem::Version
|
88
88
|
version: '0'
|
89
89
|
name: dotenv
|
@@ -91,13 +91,13 @@ dependencies:
|
|
91
91
|
type: :development
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
requirement: !ruby/object:Gem::Requirement
|
99
99
|
requirements:
|
100
|
-
- -
|
100
|
+
- - ">="
|
101
101
|
- !ruby/object:Gem::Version
|
102
102
|
version: '0'
|
103
103
|
name: pry
|
@@ -105,7 +105,7 @@ dependencies:
|
|
105
105
|
type: :development
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - ">="
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
description: |-
|
@@ -118,14 +118,15 @@ executables: []
|
|
118
118
|
extensions: []
|
119
119
|
extra_rdoc_files: []
|
120
120
|
files:
|
121
|
-
- .gitignore
|
122
|
-
- .rspec
|
123
|
-
- .ruby-version
|
124
|
-
- .travis.yml
|
121
|
+
- ".gitignore"
|
122
|
+
- ".rspec"
|
123
|
+
- ".ruby-version"
|
124
|
+
- ".travis.yml"
|
125
125
|
- Gemfile
|
126
126
|
- LICENSE.txt
|
127
127
|
- README.md
|
128
128
|
- Rakefile
|
129
|
+
- benchmark/spike.rb
|
129
130
|
- bin/console
|
130
131
|
- bin/setup
|
131
132
|
- lib/sqs_buffer.rb
|
@@ -142,17 +143,17 @@ require_paths:
|
|
142
143
|
- lib
|
143
144
|
required_ruby_version: !ruby/object:Gem::Requirement
|
144
145
|
requirements:
|
145
|
-
- -
|
146
|
+
- - ">="
|
146
147
|
- !ruby/object:Gem::Version
|
147
148
|
version: '0'
|
148
149
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
149
150
|
requirements:
|
150
|
-
- -
|
151
|
+
- - ">="
|
151
152
|
- !ruby/object:Gem::Version
|
152
153
|
version: '0'
|
153
154
|
requirements: []
|
154
155
|
rubyforge_project:
|
155
|
-
rubygems_version: 2.4.
|
156
|
+
rubygems_version: 2.4.8
|
156
157
|
signing_key:
|
157
158
|
specification_version: 4
|
158
159
|
summary: Buffer SQS messages to process more than 10 events
|