FastCGI

From Resin 3.0

(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
 
[[Category: Cookbook]] [[Category: Proxy]]
 
[[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:FastCgiProxy> 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 FastCgiProxy uses load balancing automatically, you can balance the load across multiple servers.
  
 
* serves HTTP from port 80
 
* serves HTTP from port 80
 
* changes user to "resin" from root
 
* changes user to "resin" from root
 
* enables proxy caching
 
* enables proxy caching
* FastCgi load balances to 192.168.1.10:7000 and 192.168.1.10:7000
+
* FastCgiProxy load balances to 192.168.1.10:7000 and 192.168.1.10:7000
  
== FastCgi dispatch in resin.xml ==
+
== FastCgiProxy dispatch in resin.xml ==
  
The FastCgi is part of Resin's rewrite-dispatch capability.
+
The FastCgiProxy is part of Resin's rewrite-dispatch capability.
 
   
 
   
 
   <resin xmlns="http://caucho.com/ns/resin">
 
   <resin xmlns="http://caucho.com/ns/resin">

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:FastCgiProxy> dispatch tag to dispatch to that backend.

Since Resin's FastCgiProxy 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
  • FastCgiProxy load balances to 192.168.1.10:7000 and 192.168.1.10:7000

FastCgiProxy dispatch in resin.xml

The FastCgiProxy 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