私はApache/PHPアプリケーションを1台のサーバーに、PostgreSQLデータベースを2台目のサーバーに持っています。 SSLを介して接続するように構成されています。 $db->setAttribute(PDO::ATTR_PERSISTENT, true);
がスクリプトに含まれていても、TCP接続は常に閉じられます。 PHP.INIはpgsql.allow_persistent = On
pgsql.auto_reset_persistent = Off
pgsql.max_persistent = 30
およびpgsql.max_links = 30
です。 sudo netstat -nap
を使用すると、2つのサーバー間にESTABLISHED接続が存在しないことがわかります。接続を開いたままにするには、他に何をする必要がありますか?新しい接続オーバーヘッドは、要求ごとに10〜12ミリ秒です。php postgresql永続的な接続は常に閉じる
0
A
答えて
0
私は、公正な方法ダウンPHPマニュアルページの1このノートを見つけた:
を持続的な接続を使用したい場合は、あなたがに渡されたドライバオプションの配列に PDO :: ATTR_PERSISTENTを設定する必要がありますPDO コンストラクタ。 オブジェクトのインスタンス化後にPDO :: setAttribute()でこの属性を設定すると、ドライバは永続的な接続 を使用しません。
これは私が間違っていたところです。私はこれを使用していた。
$host = explode('.',$_SERVER['SERVER_NAME']);
$db = new PDO($host[0]);
$db->setAttribute(PDO::ATTR_PERSISTENT, true);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
私はこれをやっているはずです時:
$host = explode('.', $_SERVER['SERVER_NAME']);
$db = new PDO($host[0],null,null,array(PDO::ATTR_PERSISTENT=>true,
PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE=>PDO::FETCH_ASSOC));
DSNのpdo.iniファイルです。ヌルのユーザとパスワードは幸いにも無視されます。そうしないと、どちらもうまくいかないでしょう。今すぐnew PDO
は10ミリ秒の代わりに0.02ミリ秒かかる。
関連する問題
- 1. PHPと永続的接続
- 2. PHPと永続的なHTTP接続
- 3. Android - PHP - MySQLの永続的な接続
- 4. php ftp connection - スクリプトの最後に閉じますか?私は永続的な接続をしたいですか?
- 5. Tomcat 7サーブレットは永続的なNIO接続を強制的に閉じる必要があります
- 6. タイマーベースのファイル永続的な接続
- 7. J2MEでの永続的なHTTP接続
- 8. WCFサービスHttp永続的な接続/セッション
- 9. Node.js - 永続的な接続アダプター
- 10. PHP MySQLi SSLによる永続的接続
- 11. PHP <---> FLASH永続的な接続(データストリーミング)
- 12. PHPのmemcachedへの永続的な接続
- 13. 接続phpとpostgreSQL
- 14. 永続的なPHPセッション
- 15. PostgreSQLメソッドの終了後に接続を閉じる
- 16. 永続的接続を作成する
- 17. 閉じるMQ接続
- 18. 永続的なPHPスクリプトを実行し続けるには?
- 19. Java SQLite - 接続を閉じるには?
- 20. Ruby:SOAP4R接続を閉じるには?
- 21. 接続を閉じるには
- 22. あなたは、閉じた接続
- 23. Mysqlへの接続が閉じない
- 24. Flask + Postgresqlとdb接続を開く/閉じる
- 25. Python:Tornadoと永続的データベース接続
- 26. Google Firebaseサーバの永続的接続invalid_token
- 27. Delphi永続的接続のTClientSocket
- 28. IIS 6は接続を閉じます - それを永続的に保つ方法?
- 29. CouchDB/MochiWeb:永続的な接続による悪影響
- 30. 永続的なプロキシ接続を無効にする方法
pgBouncerのような接続プールを使用してください。常に。 –