如何使用Java驱动程序

时间:2015-08-12 16:55:46

标签: java mongodb connection-pooling

我要求发布(到Graphite)可用的有效连接数'调用REST服务时Mongo数据库实例的状态。我知道我们可以使用db.serverStatus()来了解服务器端连接的详细信息。 我希望获得可用的活跃连接数量'使用JAVA API在客户端上的信息。 MongoDB Java驱动程序API文档对它没有多大帮助。

2 个答案:

答案 0 :(得分:4)

假设您使用的是3.0.x驱动程序,并在默认端口上连接到localhost:

MongoClient mongoClient = new MongoClient();
MongoDatabase database = mongoClient.getDatabase("admin");
Document serverStatus = database.runCommand(new Document("serverStatus", 1));
Map connections = (Map) serverStatus.get("connections");
Integer current = (Integer) connections.get("current");

答案 1 :(得分:0)

db.serverStatus()提供有关创建的连接数和可用连接数的信息。如下所示:

    "connections" : {
    "current" : 3,
    "available" : 2045,
    "totalCreated" : NumberLong(3)
}

您还可以使用db.currentOp(true)来获取进行中的详细信息。

http://docs.mongodb.org/manual/reference/method/db.currentOp/