0

NewRelic アカウントでランダムなアプリケーション トランザクション トレースを取得しています。これは、PHP が MongoDB レプリカ セットに接続するのに苦労していることを示しています。

トランザクション トレースは、MongoConnection::getConnection に 1 ~ 6 秒かかる場合があることを示しています。ただし、監視しているトランザクションには平均で約 25 ミリ秒かかります。

これは私の接続クラスです:

class MongoConnection {
    static $db = NULL;

    static function getConnection() {
        if (self::$db === null) {
            try {
                $m = new MongoClient("mongodb://server1:27017,server2:27017/?replicaSet=replicaset");
            } catch (MongoConnectionException $e) {
                die('Failed to connect to MongoDB '.$e->getMessage());
            }
           self::$db = $m->database;
        } 
        return self::$db;
    }
}

MongoDB v2.4 と PHP ドライバー v1.3.4 を実行しています。

なぜこれが発生するのか、問題を診断するために何を探すべきか正確にはわかりません. 誰かが私に何が起こっているか教えてくれたり、問題を探すべき場所を教えてくれたりしたら教えてください。追加情報を提供させていただきます。ありがとう。

4

0 に答える 0