We got nominated! Help us out and vote for GitHub as Best Bootstrapped Startup of 2008. (You can vote once a day.) [ hide ]

public
Description: Phusion Passenger (mod_rails)
Homepage: http://www.modrails.com/
Clone URL: git://github.com/FooBarWidget/passenger.git
Click here to lend your support to: passenger and make a donation at www.pledgie.com !
Various users guide updates.
Hongli Lai (Phusion) (author)
Sun Nov 23 04:28:34 -0800 2008
commit  fdc2ab77d3581346a62ae2604af5769df1321345
tree    baff9a3be7337773822457a9d9c234179bc8bed8
parent  19a7303bc257d33e0c9aebcc4730582244bba184
...
544
545
546
 
547
548
549
...
556
557
558
559
 
560
561
562
...
577
578
579
580
 
581
582
583
...
838
839
840
841
 
842
843
844
...
851
852
853
854
 
855
856
857
...
861
862
863
864
 
865
866
867
 
868
869
870
871
872
 
 
873
874
875
...
1425
1426
1427
 
 
1428
1429
1430
...
544
545
546
547
548
549
550
...
557
558
559
 
560
561
562
563
...
578
579
580
 
581
582
583
584
...
839
840
841
 
842
843
844
845
...
852
853
854
 
855
856
857
858
...
862
863
864
 
865
866
867
 
868
869
870
871
872
 
873
874
875
876
877
...
1427
1428
1429
1430
1431
1432
1433
1434
0
@@ -544,6 +544,7 @@ This option allows one to specify the Ruby interpreter to use.
0
 This option may only occur once, in the global server configuration.
0
 The default is 'ruby'.
0
 
0
+[[PassengerUseGlobalQueue]]
0
 === PassengerUseGlobalQueue <on|off> ===
0
 Turns the use of global queuing on or off.
0
 
0
@@ -556,7 +557,7 @@ In each place, it may be specified at most once. The default value is 'off'.
0
 
0
 'This feature is sponsored by http://www.37signals.com/[37signals].'
0
 
0
-==== What does this option do?
0
+.What does this option do?
0
 
0
 Recall that Phusion Passenger spawns multiple backend processes (e.g. multiple
0
 Ruby on Rails processes), each which processes HTTP requests serially. One of
0
@@ -577,7 +578,7 @@ all the backend processes are still busy, then Phusion Passenger will wait until
0
 at least one backend process is done, and will then forward the request to that
0
 process.
0
 
0
-==== When to turn on global queuing?
0
+.When to turn on global queuing?
0
 
0
 You should turn on global queuing if one of your web applications may have
0
 long-running requests.
0
@@ -838,7 +839,7 @@ Internally, Phusion Passenger spawns multiple Ruby on Rails processes in order t
0
 requests. But there are multiple ways with which processes can be spawned, each having
0
 its own set of pros and cons. Supported spawn methods are:
0
 
0
-smart::
0
+'smart'::
0
 When this spawn method is used, Phusion Passenger will attempt to cache Ruby on Rails
0
 framework code and application code for a limited period of time.
0
 +
0
@@ -851,7 +852,7 @@ Some Ruby on Rails applications and libraries are not compatible with smart spaw
0
 If that's the case for your application, then you should use 'conservative' as
0
 spawning method.
0
 
0
-smart-lv2::
0
+'smart-lv2'::
0
 This spawning method is similar to 'smart' but it skips the framework spawner
0
 and uses the application spawner directly. This means the framework code is not
0
 cached between multiple applications, although it is still cached within
0
@@ -861,15 +862,16 @@ instances of the same application.
0
 the 'smart' method, and still performs some caching.
0
 +
0
 *Cons:* It is slower than smart spawning if you have many applications which
0
-use the same framework version. It is therefore advised that share hosts use the
0
+use the same framework version. It is therefore advised that shared hosts use the
0
 'smart' method instead.
0
 
0
-conservative::
0
+'conservative'::
0
 This spawning method is similar to the one used in Mongrel Cluster. It does not perform
0
 any code caching at all.
0
 +
0
 *Pros:*
0
-Conservative spawning is guaranteed to be compatible with all applications and libraries.
0
+Conservative spawning is guaranteed to be compatible with all Rails applications
0
+and libraries.
0
 +
0
 *Cons:*
0
 Much slower than smart spawning. Every spawn action will be equally slow, though no slower than
0
@@ -1425,6 +1427,8 @@ sessions compared to the others, then there might be a problem:
0
 Possible reasons why spikes can occur:
0
 
0
 . Your application is busy processing a request that takes a very long time.
0
+ If this is the case, then you might want to turn
0
+ <<PassengerUseGlobalQueue,global queuing>> on.
0
 . Your application is frozen, i.e. has stopped responding. See
0
   <<debugging_frozen,Debugging frozen applications>> for tips.
0
 

Comments

    No one has commented yet.