我正在尝试使用加特林工具对一个简单的Spring webflux应用程序进行负载测试。应用程序是使用“ spring-boot-starter-webflux”和“ spring-boot-starter-data-mongodb-active”项目开发的。它只读取具有特定唯一列的mongo文档。我使用加特林setUp(scn.inject(atOnceUsers(userCount))。protocols(httpConf))注入并发用户
我启动如下所示的mongo数据库实例
mongod --replSet rs0 --port 27020 --bind_ip localhost,somehostname,some_ip --dbpath C:\ mongo \ data \ db0 --smallfiles --oplogSize 128 mongod --replSet rs0 --port 27021 --bind_ip localhost,somehostname,some_ip --dbpath C:\ mongo \ data \ db1 --smallfiles --oplogSize 128 mongod --replSet rs0 --port 27022 --bind_ip localhost,somehostname,some_ip --dbpath C:\ mongo \ data \ db2 --smallfiles --oplogSize 128
mongod --port 27018 --bind_ip localhost,somehostname,some_ip --dbpath C:\ mongo \ data \ db9 --smallfiles --oplogSize 128
设置1: Windows桌面上运行的应用程序(英特尔i5和16GB RAM),Windows笔记本电脑(英特尔i7处理器和16GB RAM)上运行的Mongo DB复制模式(3节点)以及台式机上的Gatling负载测试脚本。桌面上的应用程序脚本和Gatling脚本均已容器化。 默认情况下,队列大小为500,使用waitQueueMultiple覆盖了1000个队列大小
我正在获得这个com.mongodb.MongoWaitQueueFullException:本身具有3000并发性。
设置2: 我的设置与上述相同,但是Mongo DB在独立模式下运行
我正在获得这个com.mongodb.MongoWaitQueueFullException:本身具有3000并发性。
设置3: 应用程序,Mongo DB独立模式和Gatling负载测试脚本都在桌面上运行。所有这些都被集装箱化并通过桥接网络连接 默认情况下,队列大小为500,被1000队列大小覆盖 此设置可以正常工作,直到并发10000。我了解这里没有网络延迟的作用,因此性能更好
我有以下问题 1.除了增加队列大小之外,如何解决此异常。
mongodb-driver-reactivestreams 1.9.2 Mondo DB 4.0.8