ホームページ  >  記事  >  バックエンド開発  >  MySQL 組み込みレプリケーションによる可用性の最適化 (6)_PHP チュートリアル

MySQL 組み込みレプリケーションによる可用性の最適化 (6)_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:22:02709ブラウズ

ステップ 5: 改良されたデータベース接続プログラム
$#@60;?php
/*************************************************** ****
関数 db_​​connect_plus()
成功した場合はリンク識別子を返し、エラーの場合は false を返します
***************************** ****************************/
function db_connect_plus(){
$username = "username"
$primary = "10.1.1.1";
$backup = "10.1.1.2";
$timeout = 15; // 秒単位のタイムアウト
if($fp = fsockopen($primary, 3306, &$errno, &$errstr , $ timeout)){
fclose($fp);
return $link = mysql_connect($primary, $username, $password)
}
if($fp = fsockopen($secondary, &$errno, & $errstr) , $timeout)){
fclose($fp);
return $link = mysql_connect($security, $username, $password);
return 0;
これは改良されましたこの関数は、調整可能なタイムアウト機能を提供しますが、これは mysql_connect 関数にはないものです。接続がすぐに失敗した場合 (マシンは「生きている」が mysqld が「ダウン」している場合など)、関数はすぐに 2 番目のサーバーに移動します。上記の関数は非常に堅牢です。接続を試行する前にテストして、サービス プログラムが指定されたポートでリッスンしているかどうかを確認します。これにより、エラー状態を適切に処理できるようになります。デフォルトのポート 3306 を変更する場合は、必ずポート番号を変更してください。



http://www.bkjia.com/PHPjc/532384.html

www.bkjia.com

http://www.bkjia.com/PHPjc/532384.html技術記事ステップ 5: 改良されたデータベース接続プログラム$#@60;?php /******************************** ** ******************** 関数 db_​​connect_plus() は成功するとリンク識別子を返します...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。