Mongo 连接池超出范围

Mongo Connections pool is going beyond Scope

我是 java 和 Mongo 的新手 我正在尝试将最大池大小设置为 100

我是 运行 在 localhost 进行负载测试 我看到池正在重新使用,没有任何问题,但最大池大小不符合我给出的池大小

10k 次调用 池中有 300 个连接,我只给了 100

不确定这是怎么回事

谁能帮忙

------------------------代码开始-------------------- --------------

public class MongoFactory {

    @Autowired
    Environment environment;
    private static MongoClient mongoClient;
    private static String connectionString;
    private static MongoDatabase database;
    private static String USER_NAME;
    private static String PASSWORD;
    private static boolean createCollection = true;
    @Autowired
    EnvironmentVarUtil envUtil;

    @Autowired
    MongoWrapper mongoWrapper;


    public void setConnectionString(String connectionString) {
        this.connectionString = connectionString;
    }

    public String getConnectionString() {
        return connectionString;
    }

    private static String mongoURIBuilder(String connectionString) {

            return "mongodb+srv://" + USER_NAME + ":" + PASSWORD + "@" + connectionString + "/dbname?retryWrites=true&w=majority&connectTimeoutMS=30000&socketTimeoutMS=30000&maxPoolSize=100";
    }


    private void initMongoDB() {
        if (USER_NAME == null) {
            USER_NAME = envUtil.getEnvVar("mongoUserName");
        }
        if (PASSWORD == null) {
            PASSWORD = envUtil.getEnvVar("mongoPassword");
        }

        String mongoURI = mongoURIBuilder(connectionString);
        MongoClientURI uri = new MongoClientURI(mongoURI);
        mongoClient = new MongoClient(uri);
        String dbName = "dbname";
        database = mongoClient.getDatabase(dbName);
    }

    
    


   
    public MongoObject load(MongoObject mongoObject) throws Exception
    {

        System.out.println("Start Time " +DateTime.now());
        if(mongoClient==null)
        {
            initMongoDB();
        }

        // Get from DB code

        System.out.println("End Time " +DateTime.now());
        return mongoObject;
    }

   


}

连接池由每个已知服务器维护。如果您的客户端知道 3 个服务器(例如副本集中的 3 个节点或 3 个 mongos 路由器),并且您将最大池大小设置为 100,则您最多可以与每个服务器建立 100 个应用程序连接,总共 300 个连接.

根据驱动程序和服务器版本,每个服务器还有 1 或 2 个监视连接。