On Tue, May 13, 2008 at 11:47 PM, Samisa Abeysinghe <[EMAIL PROTECTED]> wrote: > Nandika Jayawardana wrote: > > I think FastCGI is the best option since it is widely used and solves > > all the issues that we will get with CGI like performance. However if > > SCGI is a widely used protocol I am ok with it. > > How is the adoption of SCGI and what are the servers that support it ?. > > > > What I was thinking was to let you implement it in CGI since > > CGI part is very simple and in the process you can learn the axis2 > > side of the work and then replace CGI part with FastCGI. > > > > > > Is it trivial, to replace CGI with FCGI? What about the design issues, > leveraging FCGI features in our implementation?
Axis2 side of the code should be the same. FCGI implementation would require more effort that CGI. Anyway it was just a thought and I guess Nikola has not gone into coding yet. So its better to decide what protocol to implement take it from there. -- Nandika > > Samisa... > > > Regards > > Nandika > > > > > > On Mon, May 12, 2008 at 9:50 PM, Nikola Tankovc' > > > > > > > > <[EMAIL PROTECTED]> wrote: > > > > > > > Hy all, > > > > > > Reading your performance article on http://wso2.org/library/3532 (nice > > > results by the way) I think that building an CGI exec could cause some > > > amount of bottleneck (imagine hundreds of CGI parallel processess > running > > > and starting and stoping 10k processes in second) , I know that the CGI > exec > > > is going to be very light (just simple input parsing and output forming) > , > > > but I think we should agree with Samisa Abeysinghe when he proposed > FastCGI > > > as this method would keep Axis2/C good results as well solve concurrency > > > problem with logging, what I would suggest is SCGI as being much lighter > and > > > easier to implement protocol similar to FastCGI. If some servers don't > have > > > (Fast/S)CGI interfaces there are small light CGI execs available to > redirect > > > input. > > > > > > What are your opinions on this? > > > > > > Nandika Jayawardana wrote: > > > > > > > > > > > > > > Hi Nikola, > > > > > > > > In implementing the axis2 CGI app, you need to understand how axis2 > > > > server side works in the context of a web server deployment. I think > > > > going through the source code of axis2 apache module will help you > > > > understand what needs to be done. You can find the source for it at > > > > "axis2c\src\core\transport\http\server\apache2". There are a set of > > > > functions that works as the axis2's http server side API. These > > > > functions are defined in "axis2_http_transport_utils.h" header. The > > > > server modules work by extracting the http headers and content using > > > > the Web Server's API and using these functions to invoke axis2. > > > > > > > > So in the case of CGI, extracting http headers is very simple since > > > > they are available as environment variables. Also the http content is > > > > available in stdin. > > > > > > > > Following are the things you need to figure out. > > > > > > > > 1. Defining the endpoint urls for axis2 services the are deployed > under > > > > > > > > > > > CGI. > > > > > > > > > > { In case of apache module, the service endpoint url for a service > > > > would be http://<domain>:port/axis2/services/<service name>. Apache > > > > module is configured such that all requests that have > > > > http://<domain>:port/axis2 will be directed to mod_axis2 module. In > > > > case of CGI, I am not sure whether web servers allow such mapping. In > > > > that case one option would be to have the endpoint url something like > > > > http://<domain>:port/cgi-bin/axis2_cgi.exe/services/<service name> } > > > > > > > > 2. Solving the log file problem in case of concurrent requests. > > > > > > > > 3. Specifing the axis2 configurations to cgi executable. > > > > These configurations include axis2 repository location , log file > > > > location etc. In case of Apache module, these are defined in the > > > > configuration file. > > > > > > > > I guess, once you figure out these, you can reuse most of the code in > > > > axis2 apache module for your implementation as well. > > > > > > > > Regards > > > > Nandika > > > > > > > > > > > > --------------------------------------------------------------------- > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------ > > > > > > > > No virus found in this incoming message. > > Checked by AVG. Version: 8.0.100 / Virus Database: 269.23.16/1430 - > Release Date: 5/13/2008 7:31 AM > > > > > > > -- > Samisa Abeysinghe Director, Engineering; WSO2 Inc. > > > http://www.wso2.com/ - "The Open Source SOA Company" > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- http://nandikajayawardana.blogspot.com/ WSO2 Inc: http://www.wso2.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
