ruby-style 1.1.0 → 1.1.1
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.
- data/README +91 -79
- data/lib/style/adapter/generic.rb +9 -0
- metadata +5 -2
data/README
CHANGED
@@ -28,8 +28,8 @@ Subversion access is available at svn://code.jeremyevans.net/ruby-style/.
|
|
28
28
|
the fly
|
29
29
|
* Supports both command line and yaml config file configuration
|
30
30
|
* Is easily extensible to support running other frameworks and protocols other
|
31
|
-
than the included ones (Rails and
|
32
|
-
Mongrel)
|
31
|
+
than the included ones (Rails, Ramaze, and a generic adapter; SCGI, Mongrel,
|
32
|
+
and Evented Mongrel)
|
33
33
|
|
34
34
|
== Running and configuration
|
35
35
|
|
@@ -173,44 +173,55 @@ below for information on the adapter_config config file variable.
|
|
173
173
|
Example Rails+Mongrel style.yaml that listens on ports 8912 and 8193 on any
|
174
174
|
interface, with three listeners per port. Note how the :adapter_config entry
|
175
175
|
is used to set up settings specific to the Rails adapter, such as placing
|
176
|
-
Rails in development mode.
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
:
|
181
|
-
:
|
182
|
-
:
|
183
|
-
:
|
184
|
-
:
|
185
|
-
:
|
186
|
-
:
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
176
|
+
Rails in development mode. Ignore the pipes at the beginning of the line,
|
177
|
+
blame RDoc limitations.
|
178
|
+
|
179
|
+
| ---
|
180
|
+
| :port: 8912
|
181
|
+
| :bind: ""
|
182
|
+
| :fork: 3
|
183
|
+
| :number: 2
|
184
|
+
| :killtime: 1
|
185
|
+
| :adapter: rails
|
186
|
+
| :handler: mongrel
|
187
|
+
| :adapter_config:
|
188
|
+
| :environment: development
|
189
|
+
| :log_file: log/rails-mongrel.log
|
190
|
+
| :docroot: public
|
191
|
+
| :num_processors: 99
|
192
|
+
| :timeout: 100
|
192
193
|
|
193
194
|
Example Rails+SCGI style.yaml that has four listeners on port 8912:
|
194
195
|
|
195
|
-
---
|
196
|
-
:port: 8912
|
197
|
-
:fork: 4
|
198
|
-
:number: 1
|
199
|
-
:adapter: rails
|
200
|
-
:handler: scgi
|
201
|
-
:adapter_config:
|
202
|
-
|
203
|
-
|
204
|
-
|
196
|
+
| ---
|
197
|
+
| :port: 8912
|
198
|
+
| :fork: 4
|
199
|
+
| :number: 1
|
200
|
+
| :adapter: rails
|
201
|
+
| :handler: scgi
|
202
|
+
| :adapter_config:
|
203
|
+
| :logfile: log/railsscgi.log
|
204
|
+
| :maxconns: 10
|
205
|
+
| :environment: production
|
205
206
|
|
206
207
|
Very simple configuration that runs Ramaze+Evented Mongrel in unsupervised
|
207
208
|
mode on port 3000.
|
208
209
|
|
209
|
-
---
|
210
|
-
:port: 3000
|
211
|
-
:unsupervised: 1
|
212
|
-
:adapter: ramaze
|
213
|
-
:handler: evented_mongrel
|
210
|
+
| ---
|
211
|
+
| :port: 3000
|
212
|
+
| :unsupervised: 1
|
213
|
+
| :adapter: ramaze
|
214
|
+
| :handler: evented_mongrel
|
215
|
+
|
216
|
+
Using the generic adapter to host a camping application (you are responsible
|
217
|
+
for having the camping application in a my_camping_app.rb file in your
|
218
|
+
$LOAD_PATH that uses Mongrel to run camping):
|
219
|
+
|
220
|
+
| ---
|
221
|
+
| :port: 3301
|
222
|
+
| :adapter: generic
|
223
|
+
| :adapter_config:
|
224
|
+
| :script: my_camping_app
|
214
225
|
|
215
226
|
== How restarting works
|
216
227
|
|
@@ -219,51 +230,51 @@ killing the exisiting process. It repeats this for all existing child processes
|
|
219
230
|
|
220
231
|
For example:
|
221
232
|
|
222
|
-
# style idling with three listeners
|
223
|
-
Thu Sep 6 12:01:47 PDT 2007
|
224
|
-
11460 ?? I 0:00.00 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
225
|
-
|
226
|
-
|
227
|
-
27808 ?? I 0:02.51 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
228
|
-
# Restart occurs, new process started (1207)
|
229
|
-
Thu Sep 6 12:01:49 PDT 2007
|
230
|
-
11460 ?? I 0:00.00 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
231
|
-
27808 ?? I 0:02.51 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
# Old process killed (27808)
|
236
|
-
Thu Sep 6 12:01:51 PDT 2007
|
237
|
-
11460 ?? I 0:00.01 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
# New process started (3204)
|
242
|
-
Thu Sep 6 12:01:53 PDT 2007
|
243
|
-
11460 ?? I 0:00.01 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
# Old process killed (6540)
|
249
|
-
Thu Sep 6 12:01:55 PDT 2007
|
250
|
-
11460 ?? I 0:00.01 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
# New process started (6766)
|
255
|
-
Thu Sep 6 12:01:57 PDT 2007
|
256
|
-
11460 ?? I 0:00.01 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
# Old process killed (272)
|
262
|
-
Thu Sep 6 12:01:59 PDT 2007
|
263
|
-
11460 ?? I 0:00.01 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
264
|
-
|
265
|
-
|
266
|
-
|
233
|
+
# style idling with three listeners
|
234
|
+
Thu Sep 6 12:01:47 PDT 2007
|
235
|
+
11460 ?? I 0:00.00 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
236
|
+
6540 ?? I 0:02.52 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
237
|
+
272 ?? I 0:02.52 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
238
|
+
27808 ?? I 0:02.51 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
239
|
+
# Restart occurs, new process started (1207)
|
240
|
+
Thu Sep 6 12:01:49 PDT 2007
|
241
|
+
11460 ?? I 0:00.00 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
242
|
+
27808 ?? I 0:02.51 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
243
|
+
272 ?? I 0:02.52 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
244
|
+
6540 ?? I 0:02.52 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
245
|
+
1207 ?? R 0:00.95 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
246
|
+
# Old process killed (27808)
|
247
|
+
Thu Sep 6 12:01:51 PDT 2007
|
248
|
+
11460 ?? I 0:00.01 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
249
|
+
6540 ?? I 0:02.52 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
250
|
+
272 ?? I 0:02.52 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
251
|
+
1207 ?? I 0:02.51 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
252
|
+
# New process started (3204)
|
253
|
+
Thu Sep 6 12:01:53 PDT 2007
|
254
|
+
11460 ?? I 0:00.01 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
255
|
+
272 ?? I 0:02.52 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
256
|
+
6540 ?? I 0:02.52 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
257
|
+
1207 ?? I 0:02.51 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
258
|
+
3204 ?? R 0:01.01 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
259
|
+
# Old process killed (6540)
|
260
|
+
Thu Sep 6 12:01:55 PDT 2007
|
261
|
+
11460 ?? I 0:00.01 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
262
|
+
272 ?? I 0:02.52 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
263
|
+
1207 ?? I 0:02.51 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
264
|
+
3204 ?? I 0:02.49 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
265
|
+
# New process started (6766)
|
266
|
+
Thu Sep 6 12:01:57 PDT 2007
|
267
|
+
11460 ?? I 0:00.01 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
268
|
+
272 ?? I 0:02.52 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
269
|
+
1207 ?? I 0:02.51 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
270
|
+
3204 ?? I 0:02.49 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
271
|
+
6766 ?? R 0:00.99 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
272
|
+
# Old process killed (272)
|
273
|
+
Thu Sep 6 12:01:59 PDT 2007
|
274
|
+
11460 ?? I 0:00.01 ruby: RailsMongrelStyle dir:/home/billg/testrails supervisor (ruby)
|
275
|
+
1207 ?? I 0:02.51 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
276
|
+
3204 ?? I 0:02.49 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
277
|
+
6766 ?? I 0:02.49 ruby: RailsMongrelStyle dir:/home/billg/testrails port:8912 environment:production (ruby)
|
267
278
|
|
268
279
|
Result, three brand new listening processes, total time to restart is about 12
|
269
280
|
seconds (2 * (2 killtime * 1 number * 3 fork)).
|
@@ -277,7 +288,8 @@ Machine were modified to support this.
|
|
277
288
|
|
278
289
|
Support for other adapters is easily added by adding the run method to the
|
279
290
|
Style class. This can be easy (as it is with Ramaze), or more difficult (as it
|
280
|
-
is with Rails). If the adapter uses Rack, it should be fairly simple.
|
291
|
+
is with Rails). If the adapter uses Rack, it should be fairly simple. You can
|
292
|
+
also just use the generic adapter to specify a string to require.
|
281
293
|
|
282
294
|
Style loads adapters and handlers from style/{adapter,handler} relative to the
|
283
295
|
load path, so you can add your own adapters and handlers without modifying the
|
@@ -0,0 +1,9 @@
|
|
1
|
+
class Style
|
2
|
+
# This requires config[:adapter_config][:script] || 'style_adapter',
|
3
|
+
# which means you can use it to host other supported web frameworks.
|
4
|
+
# Those frameworks should start the server that style is currently using,
|
5
|
+
# in order to pick up the correct socket.
|
6
|
+
def run
|
7
|
+
require(config[:adapter_config][:script] || 'style_adapter')
|
8
|
+
end
|
9
|
+
end
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.4
|
|
3
3
|
specification_version: 1
|
4
4
|
name: ruby-style
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 1.1.
|
7
|
-
date: 2008-
|
6
|
+
version: 1.1.1
|
7
|
+
date: 2008-02-23 00:00:00 -08:00
|
8
8
|
summary: Supervised TCPServer, Yielding Listeners Easily
|
9
9
|
require_paths:
|
10
10
|
- lib
|
@@ -38,11 +38,14 @@ files:
|
|
38
38
|
- lib/style/handler/evented_mongrel.rb
|
39
39
|
- lib/style/adapter/ramaze.rb
|
40
40
|
- lib/style/adapter/rails.rb
|
41
|
+
- lib/style/adapter/generic.rb
|
41
42
|
test_files: []
|
42
43
|
|
43
44
|
rdoc_options:
|
44
45
|
- --inline-source
|
45
46
|
- --line-numbers
|
47
|
+
- README
|
48
|
+
- lib
|
46
49
|
extra_rdoc_files: []
|
47
50
|
|
48
51
|
executables:
|