FastCGI

From Resin 3.0

(Difference between revisions)
Jump to: navigation, search
(New page: When you have a backend server like Ruby or PHP which has a FastCGI connection, you can use the <resin:FastCgi> dispatch tag to dispatch to that backend. Since Resin's FastCgi uses load b...)
 
Line 1: Line 1:
 +
[[Category: Cookbook]] [[Category: Proxy]]
 +
 
When you have a backend server like Ruby or PHP which has a FastCGI connection, you can use the <resin:FastCgi> dispatch tag to dispatch to that backend.
 
When you have a backend server like Ruby or PHP which has a FastCGI connection, you can use the <resin:FastCgi> dispatch tag to dispatch to that backend.
  
 
Since Resin's FastCgi uses load balancing automatically, you can balance the load across multiple servers.
 
Since Resin's FastCgi uses load balancing automatically, you can balance the load across multiple servers.
 +
 +
* serves HTTP from port 80
 +
* changes user to "resin" from root
 +
* enables proxy caching
 +
* FastCgi load balances to 192.168.1.10:7000 and 192.168.1.10:7000
  
 
== FastCgi dispatch in resin.xml ==
 
== FastCgi dispatch in resin.xml ==
Line 8: Line 15:
 
   
 
   
 
   <resin xmlns="http://caucho.com/ns/resin">
 
   <resin xmlns="http://caucho.com/ns/resin">
 +
 +
    <log-handler name="" level="all" path="stdout:"
 +
                timestamp="[%y-%m-%d %H:%M:%S.%s] {%{thread}} "/>
 
   
 
   
 
     <cluster id="">
 
     <cluster id="">
Line 23: Line 33:
 
         <web-app id="">
 
         <web-app id="">
 
   
 
   
           <resin:FastCgi regexp="^">
+
           <resin:FastCgiProxy>
 
             <address>192.168.1.10:7000</address>
 
             <address>192.168.1.10:7000</address>
 
             <address>192.168.1.11:7000</address>
 
             <address>192.168.1.11:7000</address>
           </resin:FastCgi>  
+
           </resin:FastCgiProxy>  
 
   
 
   
 
         </web-app>
 
         </web-app>

Revision as of 01:29, 29 September 2010


When you have a backend server like Ruby or PHP which has a FastCGI connection, you can use the <resin:FastCgi> dispatch tag to dispatch to that backend.

Since Resin's FastCgi uses load balancing automatically, you can balance the load across multiple servers.

  • serves HTTP from port 80
  • changes user to "resin" from root
  • enables proxy caching
  • FastCgi load balances to 192.168.1.10:7000 and 192.168.1.10:7000

FastCgi dispatch in resin.xml

The FastCgi is part of Resin's rewrite-dispatch capability.

 <resin xmlns="http://caucho.com/ns/resin">

   <log-handler name="" level="all" path="stdout:"
                timestamp="[%y-%m-%d %H:%M:%S.%s] {%{thread}} "/>

   <cluster id="">
     <resin:import path="${__DIR__}/app-default.xml"/>

     <server id="">
       <http port="80"/>
       <user-name>resin</user-name>
       <group-name>resin</group-name>
     </server>

     <proxy-cache/>

     <host id="">
       <web-app id="">

         <resin:FastCgiProxy>
           <address>192.168.1.10:7000</address>
           <address>192.168.1.11:7000</address>
         </resin:FastCgiProxy> 

       </web-app>
     </host>
   </cluster>

 </resin>
Personal tools