[PHP-users 537] Re: 持続的接続

BAC php-users@php.gr.jp
Wed, 04 Jul 2001 17:31:16 +0900


BACです。

On Wed, 04 Jul 2001 16:43:30 +0900
Sadamu Okamoto <okamoto@fscc.co.jp> wrote:

> 岡本です。
> 
> >  DBの持続的接続はHTTP-KeepAliveと同じようなものだと考えればよろしいかと。
> > 
> 
> つまり、pg_closeが呼ばれるまでずっと接続は持っているけど、
> 接続IDはページをまたいでは使えないということですね。
> それで、もう一度pg_pconnectを同じユーザー、パスワードで
> つないだ場合にその残った接続を使うということでよろしいのでしょうか?

 そういうことになります。どうも表現がひっかかってしまうのですが、「接続
IDはページをまたいでは使えない」というより「接続IDはページをまたいで受け
渡す必要はない(すでに接続が確立されていればそれを使用するし、なければ新
規に接続を確立する)」ということです。つまり「接続IDをページをまたがせる」
よりもずっと便利なわけです。

 次のページに移動したときにその接続IDが使用可能なものであるかどうかとい
う保証はありません(httpdが別プロセスの場合もあり得る)。なので「接続ID
をページをまたがせる」ようなことができるようになっていたとしても、それは
使えないIDかもしれないわけです。だとしたらそれが使えるかどうかを判断し、
使えないのであれば新たにコネクションを張って接続IDを取得するようにプログ
ラムを書かなければなりません。

 これってつまり、pg_pconnect()です。

----------------------------------------------
BAC