Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #7351

Re: [newbie] Small question about FastCGI

Message-ID <64369903.lpGufVcNvk@PointedEars.de> (permalink)
From Thomas 'PointedEars' Lahn <PointedEars@web.de>
Organization PointedEars Software (PES)
Date 2012-10-24 20:49 +0200
Subject Re: [newbie] Small question about FastCGI
Newsgroups comp.lang.php
References <0suc885dhh0buidnju0h77oqejlb8q22pa@4ax.com> <vilain-E975C6.22061923102012@news.individual.net>
Followup-To comp.lang.php

Followups directed to: comp.lang.php

Show all headers | View raw


Michael Vilain wrote:

> Gilles <nospam@nospam.com> wrote:
>> I just installed Lighttpd and mod_fastcgi to improve performance when
>> running PHP scripts over CGI.
>> 
>> Am I correct in understanding the following about what mod_fastcgi
>> does:
>> 1. loads severals instances of the PHP interpreter, each in its own
>> process (hence the numerous instances of /usr/bin/php5-cgi in "ps aux"
>> and the "php.socket-" pseudo-files in /tmp)
>> 2. translates between HTTP requests/responses and the PHP scripts
>> 3. does nothing about the PHP scripts, which are loaded, parsed,
>> compiled, ran, and unloaded every time they are called
>> ?
>> 
>> I'm especially concerned about the last point: If I make a lot of
>> calls to the database, does it mean that FastCGI doesn't provide
>> persistent connections to it, so I'll have to investigate other ways
>> to avoid opening/closing DB connections every time? Or is
>> opening/closing DB connections a non-issue and the main issue is
>> actual commands sent to the DB?
>> 
>> Thank you.
> 
> According to http://php.net/manual/en/function.mysql-pconnect.php you
> can only do persistent connections with mod_php. 

You did read there "Use of this extension is discouraged", did you not?

> This is because the apache server stays around and can reuse the mysql
> connection.

Do you read what you reply to?  The OP is not using Apache, they are using 
Lighthttpd.

> With FastCGI, this doesn't happen.  Apache forks php5-cgi
> which dies after the script is completed.

No, "FastCGI uses persistent processes to handle a series of requests."
They are not owned by the web server, but by the FastCGI server. [1]
 
> Rethink your requirement for persistent database connections or use
> mod_php instead of FastCGI.

Or maybe you want to get yourself informed before you give advice?

[1] <http://en.wikipedia.org/wiki/FastCGI> pp.


PointedEars
-- 
    realism:    HTML 4.01 Strict
    evangelism: XHTML 1.0 Strict
    madness:    XHTML 1.1 as application/xhtml+xml
                                                    -- Bjoern Hoehrmann

Back to comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

[newbie] Small question about FastCGI Gilles <nospam@nospam.com> - 2012-10-23 13:12 +0200
  Re: [newbie] Small question about FastCGI Jerry Stuckle <jstucklex@attglobal.net> - 2012-10-23 09:12 -0400
  Re: [newbie] Small question about FastCGI Michael Vilain <vilain@NOspamcop.net> - 2012-10-23 22:06 -0700
    Re: [newbie] Small question about FastCGI Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-10-24 20:49 +0200
      Re: [newbie] Small question about FastCGI Gilles <nospam@nospam.com> - 2012-10-25 13:04 +0200

csiph-web