PHPからmongoDBへの接続に次のコードを使用しています。ここに私のローカルホストからの私の拡張情報があり、同じものがベータ版とプロード版です。 PHPでのMongoDBデータベース接続
私は次のコードを使用してデータベースに接続しています。
class WebAPI {
private $mongoClient;
function __construct() {
$mongoClient = new MongoDB\Client("mongodb://database.local:27017");
if(!$mongoClient){
//TODO: Inform status site about failure
http_response_code(500);
die();
}
$statsDB = $mongoClient->stats; //selects database stats
$pageViewsCollection = $statsDB->pageviews;
$result = $pageViewsCollection->insertOne(PageViewInsights::getInfo());
var_dump($result->getInsertedId());
}
}
SQLデータベースでは、接続プーリングを使用します。私はmongodbにも1つがあると思う、私は確信していない。私はそれをgoogled、しかし、この新しいmongodb 1.1.xバージョンのために何も便利にはならない。
これを行うより良い方法はありますか?ルイス・エドゥアルド・デ・クリストhereで述べたよう
UPDATE
、私はより適切な情報のための質問を拡張しています。
接続プールが適切でない場合は、大量の接続を処理するにはどうすればよいですか。私は、各HTTP要求に対して1つの接続を使用し、その1つの接続を使用してすべてのトランザクションを管理することができました。たとえば、CentOSまたはUbuntuでは8GB RAM、Hexacore Xeon E5 @ 3.1GHz、 mongod
だけをApacheのような他のサーバーなしで動かすと、最大接続数はどのくらいありますか?サーバーが同時に処理できるユーザーの数これをMongoDB 3.2で最適化する方法はありますか?
PS:情報はありません私はサーバーの構成に関するデータベースの最適化について知ることができます。
どのように膨大な接続ボリュームを管理できますか?その情報は?または、この方法は効率的な方法ですか? – Sibidharan
この場合、インフラストラクチャとコードの関係がPHPによって管理されているため、心配する必要はありませんか?私が考えることができるのは、Mongodb Replicaをクラスタとシャードで使用するようなものです。 (https://docs.mongodb.com/manual/replication/)と http://stackoverflow.com/questions/17839962/persistent-connection-or-connection-pooling-inをご覧ください。 -php54-nginx-phpfpm-mongodb https://www.quora.com/How-should-I-set-up-mongodb-cluster-to-handle-20K+-simultaneous-connections – deChristo
この場合、 。私は、接続管理と最大の接続のために質問を更新しています。可能であれば、その点についてさらにデータを提供してください。 – Sibidharan