Re: [newbie] Small question about FastCGI [message #179418 is a reply to message #179415] |
Wed, 24 October 2012 18:49 |
Thomas 'PointedEars'
Messages: 701 Registered: October 2010
Karma:
|
Senior Member |
|
|
Michael Vilain wrote:
> Gilles <nospam(at)nospam(dot)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
|
|
|