jubilee 1.0.2 → 1.1.0.rc1
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/.travis.yml +1 -1
- data/CHANGELOG +17 -0
- data/Gemfile +19 -1
- data/Gemfile.lock +189 -31
- data/LICENSE.txt +20 -0
- data/README.md +44 -5
- data/ROADMAP +5 -0
- data/Rakefile +6 -5
- data/examples/chatapp/Gemfile +2 -1
- data/examples/chatapp/Gemfile.lock +8 -6
- data/examples/chatapp/README.md +5 -2
- data/examples/chatapp/app.rb +24 -0
- data/examples/chatapp/public/assets/javascripts/application.js +59 -6
- data/examples/chatapp/public/assets/stylesheets/application.css +25 -0
- data/examples/jubilee.conf.rb +0 -3
- data/jars/{hazelcast-2.6.jar → hazelcast-2.6.3.jar} +0 -0
- data/jars/{netty-all-4.0.4.Final.jar → netty-all-4.0.13.Final.jar} +0 -0
- data/jars/vertx-core-2.1M3-SNAPSHOT.jar +0 -0
- data/jars/vertx-hazelcast-2.1M3-SNAPSHOT.jar +0 -0
- data/java/src/jubilee/JubileeService.java +7 -7
- data/java/src/org/jruby/jubilee/Const.java +10 -35
- data/java/src/org/jruby/jubilee/RackApplication.java +77 -46
- data/java/src/org/jruby/jubilee/RackResponse.java +1 -3
- data/java/src/org/jruby/jubilee/RubyHttpServerResponse.java +88 -0
- data/java/src/org/jruby/jubilee/{Server.java → RubyServer.java} +17 -14
- data/java/src/org/jruby/jubilee/impl/RackEnvironment.java +157 -0
- data/java/src/org/jruby/jubilee/impl/RackEnvironmentHash.java +449 -0
- data/java/src/org/jruby/jubilee/impl/RubyIORackInput.java +5 -5
- data/java/src/org/jruby/jubilee/impl/{NullIO.java → RubyNullIO.java} +5 -9
- data/java/src/org/jruby/jubilee/utils/RubyHelper.java +37 -0
- data/jubilee.gemspec +101 -14
- data/lib/jubilee.rb +4 -3
- data/lib/jubilee/cli.rb +2 -1
- data/lib/jubilee/configuration.rb +4 -9
- data/lib/jubilee/const.rb +2 -2
- data/lib/jubilee/jubilee.jar +0 -0
- data/lib/jubilee/response.rb +9 -8
- data/lib/jubilee/server.rb +1 -1
- data/lib/jubilee/version.rb +8 -1
- data/lib/rack/chunked.rb +38 -0
- data/spec/apps/rack/basic/config.ru +50 -0
- data/spec/apps/rails4/basic/.gitignore +16 -0
- data/spec/apps/rails4/basic/Gemfile +41 -0
- data/spec/apps/rails4/basic/Gemfile.lock +127 -0
- data/spec/apps/rails4/basic/README.rdoc +28 -0
- data/spec/apps/rails4/basic/Rakefile +6 -0
- data/spec/apps/rails4/basic/app/assets/images/.keep +0 -0
- data/spec/apps/rails4/basic/app/assets/images/rails.png +0 -0
- data/spec/apps/rails4/basic/app/assets/javascripts/application.js +16 -0
- data/spec/apps/rails4/basic/app/assets/stylesheets/application.css +13 -0
- data/spec/apps/rails4/basic/app/controllers/application_controller.rb +5 -0
- data/spec/apps/rails4/basic/app/controllers/concerns/.keep +0 -0
- data/spec/apps/rails4/basic/app/controllers/reloader_controller.rb +11 -0
- data/spec/apps/rails4/basic/app/controllers/reloader_controller.rb.erb +11 -0
- data/spec/apps/rails4/basic/app/controllers/root_controller.rb +14 -0
- data/spec/apps/rails4/basic/app/helpers/application_helper.rb +2 -0
- data/spec/apps/rails4/basic/app/mailers/.keep +0 -0
- data/spec/apps/rails4/basic/app/models/.keep +0 -0
- data/spec/apps/rails4/basic/app/models/concerns/.keep +0 -0
- data/spec/apps/rails4/basic/app/views/layouts/application.html.erb +14 -0
- data/spec/apps/rails4/basic/app/views/reloader/index.html.erb +1 -0
- data/spec/apps/rails4/basic/app/views/root/index.html.erb +8 -0
- data/spec/apps/rails4/basic/app/views/root/streaming.html.erb +6 -0
- data/spec/apps/rails4/basic/bin/bundle +3 -0
- data/spec/apps/rails4/basic/bin/rails +4 -0
- data/spec/apps/rails4/basic/bin/rake +4 -0
- data/spec/apps/rails4/basic/config.ru +4 -0
- data/spec/apps/rails4/basic/config/application.rb +23 -0
- data/spec/apps/rails4/basic/config/boot.rb +4 -0
- data/spec/apps/rails4/basic/config/database.yml +20 -0
- data/spec/apps/rails4/basic/config/environment.rb +5 -0
- data/spec/apps/rails4/basic/config/environments/development.rb +29 -0
- data/spec/apps/rails4/basic/config/environments/production.rb +80 -0
- data/spec/apps/rails4/basic/config/environments/test.rb +36 -0
- data/spec/apps/rails4/basic/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/apps/rails4/basic/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec/apps/rails4/basic/config/initializers/inflections.rb +16 -0
- data/spec/apps/rails4/basic/config/initializers/mime_types.rb +5 -0
- data/spec/apps/rails4/basic/config/initializers/secret_token.rb +12 -0
- data/spec/apps/rails4/basic/config/initializers/session_store.rb +2 -0
- data/spec/apps/rails4/basic/config/initializers/wrap_parameters.rb +14 -0
- data/spec/apps/rails4/basic/config/locales/en.yml +23 -0
- data/spec/apps/rails4/basic/config/routes.rb +5 -0
- data/spec/apps/rails4/basic/db/seeds.rb +7 -0
- data/spec/apps/rails4/basic/lib/assets/.keep +0 -0
- data/spec/apps/rails4/basic/lib/tasks/.keep +0 -0
- data/spec/apps/rails4/basic/public/404.html +58 -0
- data/spec/apps/rails4/basic/public/422.html +58 -0
- data/spec/apps/rails4/basic/public/500.html +57 -0
- data/spec/apps/rails4/basic/public/favicon.ico +0 -0
- data/spec/apps/rails4/basic/public/robots.txt +5 -0
- data/spec/apps/rails4/basic/public/some_page.html +7 -0
- data/spec/apps/rails4/basic/test/controllers/.keep +0 -0
- data/spec/apps/rails4/basic/test/fixtures/.keep +0 -0
- data/spec/apps/rails4/basic/test/helpers/.keep +0 -0
- data/spec/apps/rails4/basic/test/integration/.keep +0 -0
- data/spec/apps/rails4/basic/test/mailers/.keep +0 -0
- data/spec/apps/rails4/basic/test/models/.keep +0 -0
- data/spec/apps/rails4/basic/test/test_helper.rb +15 -0
- data/spec/apps/rails4/basic/vendor/assets/javascripts/.keep +0 -0
- data/spec/apps/rails4/basic/vendor/assets/stylesheets/.keep +0 -0
- data/spec/apps/sinatra/basic/Gemfile +4 -0
- data/spec/apps/sinatra/basic/Gemfile.lock +20 -0
- data/spec/apps/sinatra/basic/basic.rb +27 -0
- data/spec/apps/sinatra/basic/config.ru +7 -0
- data/spec/apps/sinatra/basic/public/some_page.html +7 -0
- data/spec/apps/sinatra/basic/views/index.erb +4 -0
- data/spec/apps/sinatra/basic/views/posted.haml +2 -0
- data/spec/apps/sinatra/basic/views/poster.haml +4 -0
- data/spec/apps/sinatra/basic/views/request_mapping.haml +4 -0
- data/spec/integration/basic_rack_spec.rb +89 -0
- data/spec/integration/basic_rails4_spec.rb +64 -0
- data/spec/integration/basic_sinatra_spec.rb +80 -0
- data/spec/spec_helper.rb +13 -0
- data/test/jubilee/test_cli.rb +1 -1
- data/test/jubilee/test_configuration.rb +18 -1
- data/test/jubilee/test_rack_server.rb +7 -7
- data/test/jubilee/test_response.rb +35 -36
- data/test/jubilee/test_server.rb +1 -1
- data/test/jubilee/test_upload.rb +14 -11
- data/test/test_helper.rb +1 -0
- metadata +97 -18
- data/VERSION +0 -1
- data/jars/vertx-core-2.1.0-SNAPSHOT.jar +0 -0
- data/java/src/org/jruby/jubilee/RackErrors.java +0 -44
- data/java/src/org/jruby/jubilee/impl/DefaultRackEnvironment.java +0 -99
- data/java/src/org/jruby/jubilee/impl/RubyIORackErrors.java +0 -68
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0f1455eb032eecbf34eb4c64b1f7c2275bf6a712
|
|
4
|
+
data.tar.gz: f69992911c71786735f250f043720d56fc8ea825
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ff9925abef232206f19275b9e04f4438c5ce568b74cb4962acd5b368c6f798d514bd8d37cdfdae961504ec82b69d8cbfe19fae256fed5a65e7283287a954915c
|
|
7
|
+
data.tar.gz: c6b4adf8cd09c53d3cf79c8d4cef04a2c420ee81f10b0ef7d106029a9d838a70d6275f0329b0fe4372b5a2f3ee20b7e922f44f9fc81a33dfc687e707782bfe3c
|
data/.travis.yml
CHANGED
data/CHANGELOG
CHANGED
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
Release 1.0.2
|
|
2
|
+
=============
|
|
3
|
+
|
|
4
|
+
fix RACK_ENV not set when using the jubilee command
|
|
5
|
+
|
|
6
|
+
Release 1.0.1
|
|
7
|
+
=============
|
|
8
|
+
|
|
9
|
+
Fix string status code caused crash on rails 4
|
|
10
|
+
|
|
11
|
+
Release 1.0.0
|
|
12
|
+
=============
|
|
13
|
+
|
|
14
|
+
Add full suport of event bus, shared data and clustering.
|
|
15
|
+
|
|
16
|
+
Documents, chat app
|
|
17
|
+
|
|
1
18
|
Release 0.4.0
|
|
2
19
|
=============
|
|
3
20
|
|
data/Gemfile
CHANGED
|
@@ -5,7 +5,7 @@ gem 'rack', '>= 1.4.1'
|
|
|
5
5
|
gem 'spoon', '~> 0.0.4'
|
|
6
6
|
|
|
7
7
|
group :development do
|
|
8
|
-
gem 'jeweler'
|
|
8
|
+
gem 'jeweler', '~> 1.8.7'
|
|
9
9
|
end
|
|
10
10
|
|
|
11
11
|
group :test do
|
|
@@ -14,4 +14,22 @@ group :test do
|
|
|
14
14
|
gem 'multipart-post'
|
|
15
15
|
gem 'pry'
|
|
16
16
|
gem 'rcov'
|
|
17
|
+
gem 'rspec'
|
|
18
|
+
gem 'capybara'
|
|
19
|
+
gem 'poltergeist'
|
|
20
|
+
|
|
21
|
+
# sinatra spec
|
|
22
|
+
gem 'sinatra'
|
|
23
|
+
gem 'haml'
|
|
24
|
+
# rails4 spec
|
|
25
|
+
gem 'rails', '~> 4.0.0'
|
|
26
|
+
gem 'activerecord-jdbc-adapter'
|
|
27
|
+
gem 'jdbc-sqlite3'
|
|
28
|
+
gem 'sass-rails', '~> 4.0.0'
|
|
29
|
+
gem 'uglifier', '>= 1.3.0'
|
|
30
|
+
gem 'coffee-rails', '~> 4.0.0'
|
|
31
|
+
gem 'therubyrhino'
|
|
32
|
+
gem 'jquery-rails', '>= 3.0'
|
|
33
|
+
gem 'turbolinks'
|
|
34
|
+
gem 'jbuilder', '~> 1.2'
|
|
17
35
|
end
|
data/Gemfile.lock
CHANGED
|
@@ -1,13 +1,62 @@
|
|
|
1
1
|
GEM
|
|
2
2
|
remote: https://rubygems.org/
|
|
3
3
|
specs:
|
|
4
|
+
actionmailer (4.0.2)
|
|
5
|
+
actionpack (= 4.0.2)
|
|
6
|
+
mail (~> 2.5.4)
|
|
7
|
+
actionpack (4.0.2)
|
|
8
|
+
activesupport (= 4.0.2)
|
|
9
|
+
builder (~> 3.1.0)
|
|
10
|
+
erubis (~> 2.7.0)
|
|
11
|
+
rack (~> 1.5.2)
|
|
12
|
+
rack-test (~> 0.6.2)
|
|
13
|
+
activemodel (4.0.2)
|
|
14
|
+
activesupport (= 4.0.2)
|
|
15
|
+
builder (~> 3.1.0)
|
|
16
|
+
activerecord (4.0.2)
|
|
17
|
+
activemodel (= 4.0.2)
|
|
18
|
+
activerecord-deprecated_finders (~> 1.0.2)
|
|
19
|
+
activesupport (= 4.0.2)
|
|
20
|
+
arel (~> 4.0.0)
|
|
21
|
+
activerecord-deprecated_finders (1.0.3)
|
|
22
|
+
activerecord-jdbc-adapter (1.3.4)
|
|
23
|
+
activerecord (>= 2.2)
|
|
24
|
+
activesupport (4.0.2)
|
|
25
|
+
i18n (~> 0.6, >= 0.6.4)
|
|
26
|
+
minitest (~> 4.2)
|
|
27
|
+
multi_json (~> 1.3)
|
|
28
|
+
thread_safe (~> 0.1)
|
|
29
|
+
tzinfo (~> 0.3.37)
|
|
4
30
|
addressable (2.3.5)
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
31
|
+
arel (4.0.1)
|
|
32
|
+
atomic (1.1.14)
|
|
33
|
+
atomic (1.1.14-java)
|
|
34
|
+
builder (3.1.4)
|
|
35
|
+
capybara (2.2.0)
|
|
36
|
+
mime-types (>= 1.16)
|
|
37
|
+
nokogiri (>= 1.3.3)
|
|
38
|
+
rack (>= 1.0.0)
|
|
39
|
+
rack-test (>= 0.5.4)
|
|
40
|
+
xpath (~> 2.0)
|
|
41
|
+
celluloid (0.15.2)
|
|
42
|
+
timers (~> 1.1.0)
|
|
43
|
+
cliver (0.3.2)
|
|
44
|
+
coderay (1.1.0)
|
|
45
|
+
coffee-rails (4.0.1)
|
|
46
|
+
coffee-script (>= 2.2.0)
|
|
47
|
+
railties (>= 4.0.0, < 5.0)
|
|
48
|
+
coffee-script (2.2.0)
|
|
49
|
+
coffee-script-source
|
|
50
|
+
execjs
|
|
51
|
+
coffee-script-source (1.6.3)
|
|
52
|
+
diff-lcs (1.2.5)
|
|
53
|
+
erubis (2.7.0)
|
|
54
|
+
execjs (2.0.2)
|
|
55
|
+
faraday (0.8.8)
|
|
56
|
+
multipart-post (~> 1.2.0)
|
|
57
|
+
ffi (1.9.3)
|
|
58
|
+
ffi (1.9.3-java)
|
|
59
|
+
formatador (0.2.4)
|
|
11
60
|
git (1.2.6)
|
|
12
61
|
github_api (0.10.1)
|
|
13
62
|
addressable
|
|
@@ -16,17 +65,26 @@ GEM
|
|
|
16
65
|
multi_json (~> 1.4)
|
|
17
66
|
nokogiri (~> 1.5.2)
|
|
18
67
|
oauth2
|
|
19
|
-
guard (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
68
|
+
guard (2.2.5)
|
|
69
|
+
formatador (>= 0.2.4)
|
|
70
|
+
listen (~> 2.1)
|
|
71
|
+
lumberjack (~> 1.0)
|
|
72
|
+
pry (>= 0.9.12)
|
|
73
|
+
thor (>= 0.18.1)
|
|
24
74
|
guard-minitest (0.5.0)
|
|
25
75
|
guard (>= 0.4)
|
|
76
|
+
haml (4.0.4)
|
|
77
|
+
tilt
|
|
26
78
|
hashie (2.0.5)
|
|
27
|
-
highline (1.6.
|
|
79
|
+
highline (1.6.20)
|
|
80
|
+
hike (1.2.3)
|
|
28
81
|
httpauth (0.2.0)
|
|
29
|
-
|
|
82
|
+
i18n (0.6.9)
|
|
83
|
+
jbuilder (1.5.3)
|
|
84
|
+
activesupport (>= 3.0.0)
|
|
85
|
+
multi_json (>= 1.2.0)
|
|
86
|
+
jdbc-sqlite3 (3.7.2.1)
|
|
87
|
+
jeweler (1.8.8)
|
|
30
88
|
builder
|
|
31
89
|
bundler (~> 1.0)
|
|
32
90
|
git (>= 1.2.5)
|
|
@@ -35,15 +93,26 @@ GEM
|
|
|
35
93
|
nokogiri (= 1.5.10)
|
|
36
94
|
rake
|
|
37
95
|
rdoc
|
|
38
|
-
|
|
96
|
+
jquery-rails (3.0.4)
|
|
97
|
+
railties (>= 3.0, < 5.0)
|
|
98
|
+
thor (>= 0.14, < 2.0)
|
|
99
|
+
json (1.8.1-java)
|
|
39
100
|
jwt (0.1.8)
|
|
40
101
|
multi_json (>= 1.5)
|
|
41
|
-
listen (
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
102
|
+
listen (2.4.0)
|
|
103
|
+
celluloid (>= 0.15.2)
|
|
104
|
+
rb-fsevent (>= 0.9.3)
|
|
105
|
+
rb-inotify (>= 0.9)
|
|
106
|
+
lumberjack (1.0.4)
|
|
107
|
+
mail (2.5.4)
|
|
108
|
+
mime-types (~> 1.16)
|
|
109
|
+
treetop (~> 1.4.8)
|
|
110
|
+
method_source (0.8.2)
|
|
111
|
+
mime-types (1.25.1)
|
|
112
|
+
minitest (4.7.5)
|
|
113
|
+
multi_json (1.8.2)
|
|
45
114
|
multi_xml (0.5.5)
|
|
46
|
-
multipart-post (1.
|
|
115
|
+
multipart-post (1.2.0)
|
|
47
116
|
nokogiri (1.5.10-java)
|
|
48
117
|
oauth2 (0.9.2)
|
|
49
118
|
faraday (~> 0.8)
|
|
@@ -52,35 +121,124 @@ GEM
|
|
|
52
121
|
multi_json (~> 1.0)
|
|
53
122
|
multi_xml (~> 0.5)
|
|
54
123
|
rack (~> 1.2)
|
|
55
|
-
|
|
56
|
-
|
|
124
|
+
poltergeist (1.5.0)
|
|
125
|
+
capybara (~> 2.1)
|
|
126
|
+
cliver (~> 0.3.1)
|
|
127
|
+
multi_json (~> 1.0)
|
|
128
|
+
websocket-driver (>= 0.2.0)
|
|
129
|
+
polyglot (0.3.3)
|
|
130
|
+
pry (0.9.12.4)
|
|
131
|
+
coderay (~> 1.0)
|
|
57
132
|
method_source (~> 0.8)
|
|
58
|
-
slop (~> 3.
|
|
59
|
-
pry (0.9.
|
|
60
|
-
coderay (~> 1.0
|
|
133
|
+
slop (~> 3.4)
|
|
134
|
+
pry (0.9.12.4-java)
|
|
135
|
+
coderay (~> 1.0)
|
|
61
136
|
method_source (~> 0.8)
|
|
62
|
-
slop (~> 3.
|
|
137
|
+
slop (~> 3.4)
|
|
63
138
|
spoon (~> 0.0)
|
|
64
|
-
rack (1.
|
|
65
|
-
|
|
139
|
+
rack (1.5.2)
|
|
140
|
+
rack-protection (1.5.1)
|
|
141
|
+
rack
|
|
142
|
+
rack-test (0.6.2)
|
|
143
|
+
rack (>= 1.0)
|
|
144
|
+
rails (4.0.2)
|
|
145
|
+
actionmailer (= 4.0.2)
|
|
146
|
+
actionpack (= 4.0.2)
|
|
147
|
+
activerecord (= 4.0.2)
|
|
148
|
+
activesupport (= 4.0.2)
|
|
149
|
+
bundler (>= 1.3.0, < 2.0)
|
|
150
|
+
railties (= 4.0.2)
|
|
151
|
+
sprockets-rails (~> 2.0.0)
|
|
152
|
+
railties (4.0.2)
|
|
153
|
+
actionpack (= 4.0.2)
|
|
154
|
+
activesupport (= 4.0.2)
|
|
155
|
+
rake (>= 0.8.7)
|
|
156
|
+
thor (>= 0.18.1, < 2.0)
|
|
157
|
+
rake (10.1.1)
|
|
158
|
+
rb-fsevent (0.9.4)
|
|
159
|
+
rb-inotify (0.9.3)
|
|
160
|
+
ffi (>= 0.5.0)
|
|
66
161
|
rcov (0.9.11)
|
|
67
162
|
rcov (0.9.11-java)
|
|
68
|
-
rdoc (4.0
|
|
163
|
+
rdoc (4.1.0)
|
|
69
164
|
json (~> 1.4)
|
|
70
|
-
|
|
165
|
+
rspec (2.14.1)
|
|
166
|
+
rspec-core (~> 2.14.0)
|
|
167
|
+
rspec-expectations (~> 2.14.0)
|
|
168
|
+
rspec-mocks (~> 2.14.0)
|
|
169
|
+
rspec-core (2.14.7)
|
|
170
|
+
rspec-expectations (2.14.4)
|
|
171
|
+
diff-lcs (>= 1.1.3, < 2.0)
|
|
172
|
+
rspec-mocks (2.14.4)
|
|
173
|
+
sass (3.2.13)
|
|
174
|
+
sass-rails (4.0.1)
|
|
175
|
+
railties (>= 4.0.0, < 5.0)
|
|
176
|
+
sass (>= 3.1.10)
|
|
177
|
+
sprockets-rails (~> 2.0.0)
|
|
178
|
+
sinatra (1.4.4)
|
|
179
|
+
rack (~> 1.4)
|
|
180
|
+
rack-protection (~> 1.4)
|
|
181
|
+
tilt (~> 1.3, >= 1.3.4)
|
|
182
|
+
slop (3.4.7)
|
|
71
183
|
spoon (0.0.4)
|
|
72
184
|
ffi
|
|
73
|
-
|
|
185
|
+
sprockets (2.10.1)
|
|
186
|
+
hike (~> 1.2)
|
|
187
|
+
multi_json (~> 1.0)
|
|
188
|
+
rack (~> 1.0)
|
|
189
|
+
tilt (~> 1.1, != 1.3.0)
|
|
190
|
+
sprockets-rails (2.0.1)
|
|
191
|
+
actionpack (>= 3.0)
|
|
192
|
+
activesupport (>= 3.0)
|
|
193
|
+
sprockets (~> 2.8)
|
|
194
|
+
therubyrhino (2.0.2)
|
|
195
|
+
therubyrhino_jar (>= 1.7.3)
|
|
196
|
+
therubyrhino_jar (1.7.4)
|
|
197
|
+
thor (0.18.1)
|
|
198
|
+
thread_safe (0.1.3)
|
|
199
|
+
atomic
|
|
200
|
+
thread_safe (0.1.3-java)
|
|
201
|
+
atomic
|
|
202
|
+
tilt (1.4.1)
|
|
203
|
+
timers (1.1.0)
|
|
204
|
+
treetop (1.4.15)
|
|
205
|
+
polyglot
|
|
206
|
+
polyglot (>= 0.3.1)
|
|
207
|
+
turbolinks (2.1.0)
|
|
208
|
+
coffee-rails
|
|
209
|
+
tzinfo (0.3.38)
|
|
210
|
+
uglifier (2.4.0)
|
|
211
|
+
execjs (>= 0.3.0)
|
|
212
|
+
json (>= 1.8.0)
|
|
213
|
+
websocket-driver (0.3.2)
|
|
214
|
+
websocket-driver (0.3.2-java)
|
|
215
|
+
xpath (2.0.0)
|
|
216
|
+
nokogiri (~> 1.3)
|
|
74
217
|
|
|
75
218
|
PLATFORMS
|
|
76
219
|
java
|
|
77
220
|
|
|
78
221
|
DEPENDENCIES
|
|
222
|
+
activerecord-jdbc-adapter
|
|
223
|
+
capybara
|
|
224
|
+
coffee-rails (~> 4.0.0)
|
|
79
225
|
guard
|
|
80
226
|
guard-minitest
|
|
81
|
-
|
|
227
|
+
haml
|
|
228
|
+
jbuilder (~> 1.2)
|
|
229
|
+
jdbc-sqlite3
|
|
230
|
+
jeweler (~> 1.8.7)
|
|
231
|
+
jquery-rails (>= 3.0)
|
|
82
232
|
multipart-post
|
|
233
|
+
poltergeist
|
|
83
234
|
pry
|
|
84
235
|
rack (>= 1.4.1)
|
|
236
|
+
rails (~> 4.0.0)
|
|
85
237
|
rcov
|
|
238
|
+
rspec
|
|
239
|
+
sass-rails (~> 4.0.0)
|
|
240
|
+
sinatra
|
|
86
241
|
spoon (~> 0.0.4)
|
|
242
|
+
therubyrhino
|
|
243
|
+
turbolinks
|
|
244
|
+
uglifier (>= 1.3.0)
|
data/LICENSE.txt
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
Copyright (c) 2012-2014 Isaiah Peng
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
4
|
+
a copy of this software and associated documentation files (the
|
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
9
|
+
the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be
|
|
12
|
+
included in all copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
[](https://travis-ci.org/isaiah/jubilee)
|
|
2
2
|
|
|
3
|
-
Jubilee
|
|
3
|
+
Jubilee server
|
|
4
4
|
=========
|
|
5
5
|
|
|
6
6
|
> "We need a web framework for Vertx.", you said.
|
|
7
7
|
|
|
8
8
|
> "But why not use Vertx in your Rails applications, it's the most productive web framework ever created."
|
|
9
9
|
|
|
10
|
-
The Answer is Jubilee, a rack server with [vertx 2.0](http://vertx.io) awesomeness builtin.
|
|
10
|
+
The Answer is Jubilee, a rack server with [vertx 2.0](http://vertx.io) awesomeness builtin. Check out the
|
|
11
|
+
[demo](http://192.241.201.68:8080/) [application](https://github.com/isaiah/jubilee/tree/master/examples/chatapp).
|
|
11
12
|
|
|
12
13
|
Why another rack server?
|
|
13
14
|
------------------------
|
|
@@ -33,7 +34,7 @@ Installation
|
|
|
33
34
|
|
|
34
35
|
$ jruby -S gem install jubilee
|
|
35
36
|
|
|
36
|
-
Jubilee requires JRuby 1.7.
|
|
37
|
+
Jubilee requires JRuby 1.7.5 or later, and JDK 7+
|
|
37
38
|
|
|
38
39
|
Get started
|
|
39
40
|
-----------
|
|
@@ -44,7 +45,8 @@ Get started
|
|
|
44
45
|
Setup
|
|
45
46
|
-----
|
|
46
47
|
|
|
47
|
-
If you use bundler, you might want to add `jubilee` to your Gemfile
|
|
48
|
+
If you use bundler, you might want to add `jubilee` to your Gemfile,
|
|
49
|
+
this is required if you want use rails http stream
|
|
48
50
|
|
|
49
51
|
$ jubilee
|
|
50
52
|
|
|
@@ -92,7 +94,44 @@ eb.send("test", "hello, world");
|
|
|
92
94
|
For more advanced examples, checkout the
|
|
93
95
|
[chatapp](https://github.com/isaiah/jubilee/tree/master/examples/chatapp).
|
|
94
96
|
|
|
97
|
+
Performance Tuning
|
|
98
|
+
=================
|
|
99
|
+
|
|
100
|
+
Improving connection time
|
|
101
|
+
-------------------------
|
|
102
|
+
|
|
103
|
+
If you're creating a lot of connections to a Jubilee(Vert.x) server in a short
|
|
104
|
+
period of time, e.g. benchmarking with tools like [wrk](https://github.com/wg/wrk),
|
|
105
|
+
you may need to tweak some settings in order to avoid the TCP accept queue
|
|
106
|
+
getting full. This can result in connections being refused or packets being
|
|
107
|
+
dropped during the handshake which can then cause the client to retry.
|
|
108
|
+
|
|
109
|
+
A classic symptom of this is if you see long connection times just over
|
|
110
|
+
3000ms at your client.
|
|
111
|
+
|
|
112
|
+
How to tune this is operating system specific but in Linux you need to
|
|
113
|
+
increase a couple of settings in the TCP / Net config (10000 is an
|
|
114
|
+
arbitrarily large number)
|
|
115
|
+
|
|
116
|
+
```shell
|
|
117
|
+
sudo sysctl -w net.core.somaxconn=10000
|
|
118
|
+
sudo sysctl -w net.ipv4.tcp_max_syn_backlog=10000
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
For other operating systems, please consult your operating system
|
|
122
|
+
documentation.
|
|
123
|
+
|
|
95
124
|
License
|
|
96
125
|
--------
|
|
97
126
|
|
|
98
|
-
|
|
127
|
+
See [LICENSE.txt](https://github.com/isaiah/jubilee/blob/master/LICENSE.txt)
|
|
128
|
+
|
|
129
|
+
Acknowledgment
|
|
130
|
+
--------------
|
|
131
|
+
|
|
132
|
+
YourKit is kindly supporting Jubilee Server with its full-featured Java Profiler.
|
|
133
|
+
YourKit, LLC is the creator of innovative and intelligent tools for profiling
|
|
134
|
+
Java and .NET applications. Take a look at YourKit's leading software products:
|
|
135
|
+
[YourKit Java
|
|
136
|
+
Profiler](http://www.yourkit.com/java/profiler/index.jsp) and
|
|
137
|
+
[YourKit .NET Profiler](http://www.yourkit.com/.net/profiler/index.jsp).
|