我一直在使用jmeter对mongodb进行加载测试,接下来我将使用一个具有这些数据的不同的db
我已经在这里保存了已保存的mongoHost,mongoPort,databaseName,collectionName
jmeter变量
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoClient;
import com.mongodb.MongoClientSettings;
import com.mongodb.MongoCredential;
import com.mongodb.ServerAddress;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoCollection;
import static com.mongodb.client.model.Filters.*;
import org.bson.Document;
import java.util.Arrays;
try{
MongoClientSettings settings = MongoClientSettings.builder()
.applyToClusterSettings {builder ->
builder.hosts(Arrays.asList(new ServerAddress(vars.get("mongoHost"),vars.get("mongoPort").toInteger())))}
.build();
MongoClient mongoClient = MongoClients.create(settings);
MongoDatabase database = mongoClient.getDatabase(vars.get("databaseName"));
MongoCollection<Document> collection = database.getCollection(vars.get("collectionName"));
vars.putObject("collection", collection);
return "Connected to " + vars.get("collectionName");
}
catch (Exception e) {
SampleResult.setSuccessful(false);
SampleResult.setResponseCode("500");
SampleResult.setResponseMessage("Exception: " + e);
}
这个连接测试通过了,但我无法从数据库中获取、读取任何数据并通过测试,这是代码
import com.mongodb.client.MongoCollection;
import static com.mongodb.client.model.Filters.*;
import org.bson.Document;
import org.bson.types.ObjectId;
try {
MongoCollection<Document> collection = vars.getObject("collection");
Document result = collection.find(eq("city","CUSHMAN")).first();
vars.put("exampleDocumentId", result.get("_id").toString());
return "Document with id=" + result.get("_id") + " found";
}
catch (Exception e) {
SampleResult.setSuccessful(false);
SampleResult.setResponseCode("500");
SampleResult.setResponseMessage("Exception: " + e);
}
错误
Response code:500
Response message:Exception: com.mongodb.MongoTimeoutException: Timed out after 30000 ms while waiting to connect. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:27017, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketReadException: Exception receiving message}, caused by {java.io.IOException: An existing connection was forcibly closed by the remote host}}]
谢谢你
我没有看到“连接测试通过”的证据,如果您查看异常详细信息:
状态=connecting
Exception={com.mongodb.mongosocketreadexception:Exception receiving message},
由{java.io.ioException:远程主机强制关闭了现有连接}}]
因此,我宁愿检查您是否可以使用其他MongoDB客户端(如Mongo Shell)运行此查询,因为这似乎是一个常见的网络问题,或者您的MongoDB实例只是还没有启动。
为了获得更多信息,您可以为Mongo Java客户端驱动程序增加JMeter日志的冗长,可以通过在log4j2.xml文件中添加下一行来实现:
<Logger name="com.mongodb.client" level="debug" />
本文向大家介绍如何使用LIMIT查询MongoDB?,包括了如何使用LIMIT查询MongoDB?的使用技巧和注意事项,需要的朋友参考一下 使用limit()方法查询MongoDB。让我们创建一个包含文档的集合 在find方法的帮助下显示集合中的所有文档- 这将产生以下输出- 以下是在MongoDB中使用LIMIT的查询- 这将产生以下输出-
问题内容: 我正在尝试在mongodb中执行查询日期,但结果始终为空。我的查询如下: //变量resultaMongo返回空。 Obs:我也尝试不使用.isoformat(),当我直接放入mongodb时,只有添加ISODate才返回结果。因此不会返回结果: 更重要的是,如果您编辑返回: 这是数据库中的记录序列: 如果我打印python的json变量,则会看到类似以下内容的内容: 我的Mongnd
我试图使用.NET驱动程序查询mongodb文档,我想在不创建类对象的情况下获取特定文档中的所有字段,因为这些文档是动态生成的,我只知道一个字段名,即,_id。如何获取整个文档 当字段已知时,这工作正常
mongoDb中的文档如下所示: 在我的api请求中,我有一个类似于上面的“建议”元素的结构。我想创建一个查询条件,其中“is”子句应该是api请求中“建议”元素的值。 我使用spring data mongo DB尝试了以下代码:
问题内容: 我想用SQLlike查询来查询一些东西: 我如何在MongoDB中实现相同目标?我like在文档中找不到运算符。 问题答案: 那必须是: 或类似: 您正在寻找某种在某处包含“ m”的东西(SQL的运算符等效于Regexp的),而不是在字符串的开头固定了“ m”的东西。 注意: mongodb使用的正则表达式比sql中的“ LIKE”更强大。使用正则表达式,您可以创建您想像的任何模式。
问题内容: 我想用SQL查询来查询一些东西: 如何在MongoDB中实现相同目标?我在文档中找不到运算符。 问题答案: 那必须是: 或类似: 您正在寻找某种在某处包含“ m”的东西(SQL的’ ‘运算符等效于Regexp的’ ‘),而不是在字符串的开头锚定了“ m”的事物。 注意: mongodb使用的正则表达式比sql中的“ LIKE”更强大。使用正则表达式,您可以创建您想像的任何模式。 有关正