[ 検索ページ | 一覧表示 | ツリー表示 | MLトップ | トップページ ]
[comu-ml 0163] Re: DB接続の持続的接続オプション

習田です。

On Thu, 13 Mar 2008 18:34:32 +0900
"Kentaro Ohkouchi" <ohkouchi@loop-az.jp> wrote:

> >  DB接続の持続的接続オプションを実装してみましたので、
> >  皆様にお目通し頂きたくMLに投稿させてもらいます
> 
> パッチありがとうございます!
> 
> このパッチの設定なのですが, 以前, 案件で使用したことがあり, アクセス集中があった際に, コネクションが大量に残ってしまい,
> 結局高負荷で DB 接続できなくなったことがあります.
> 
> 環境は, PostgreSQLでした.
> その件があって以来, 怖くて設定していないのですが, 習田さんの環境では, 設定した方が負荷低減していますでしょうか.
> 

はい、こちらの環境では、レスポンスが向上しています。
ただ、おっしゃる通りメモリ等のリソースに余裕のある環境でないと逆効果になる場合もありますので、
万人に有効なものではありませんね。
デフォルトでは無効にしていますので、必要な方だけ有効にして使ってもらえればと思います。
というわけで、コミット(r17153,r17154)しておきました。


> また, ちょっと話題から外れてしまいますが, 手元の開発環境の SC_Query を PDO に対応させてみました.
> 
> せっかくなので, SC_Query をインターフェイスにしたり, Singleton パター
> ンを使用したりして, PHP5 の構文をいろいろ使ってみました.
> 
> 実行時間も測ってみました.
> 100万件超のテーブルで limit 10 offset 5000 の条件で DB は PostgreSQL 8.3.0 です.
> 
> Pear::DB 版 の所要時間 0.015205 秒
> PDO版 の所要時間 0.012010 秒
> 
> もっと差が出るかなぁと思いましたが, 頑張った割に成果少なし...
> バッチ処理の場合は, もうちょっと差が出るかもしれません.
> 
> こちらは需要がありそうならパッチを作ろうと思いますが, いかがでしょう?
> 

素晴らしいですね。是非ともパッチ作成して頂きたいです。

ただ、上記の実装になると、システム要件が、PHP5.1以降になってしまうかと思います。
それ以前のバージョンのPHP環境への対応も考えるとSC_Queryを
PEAR::DB版かPDO版かを切り替えられるような仕組みも必要になってきそうですね。


-- 
習田 貴史 (SHUTTA, Takafumi)
E-Mail: shutta @ cyber-will.co.jp

株式会社サイバーウィル <http://www.cyber-will.co.jp/>
〒541-0056 大阪市中央区久太郎町4-2-10 大西ビルディング803
Tel: 06-4306-5044

Follow-Ups
[comu-ml 0166] Re: DB接続の持続的接続オプション, Kentaro Ohkouchi
References
[comu-ml 0159] DB接続の持続的接続オプション, SHUTTA, Takafumi
[comu-ml 0162] Re: DB接続の持続的接続オプション, Kentaro Ohkouchi

[ 検索ページ | 一覧表示 | ツリー表示 | MLトップ | トップページ ]