Я не знаю достаточно о MongoDB, чтобы ответить на этот вопрос напрямую, но знаете ли вы, как MongoDB обрабатывает запросы по TCP?Например, одна проблема с одним TCP-соединением может заключаться в том, что БД будет обрабатывать каждый запрос последовательно, что может вызвать высокую задержку, даже если это может быть узким местом на одной машине и может обрабатывать более высокую емкость.
Все ли машины работают в локальной сети?Если это так, то стоимость открытия нового соединения не будет слишком высокой и даже может быть незначительной с точки зрения производительности независимо от этого.
Мои два цента: сделать одно TCP-соединение на запрос и просто профилировать его и посмотретьчто просходит.Очень легко добавить пул позже, если вы делаете DoSing самостоятельно, но это может никогда не быть проблемой.Это сработает прямо сейчас, и вам не придется возиться со сторонней библиотекой, которая может вызвать больше проблем, чем решает.
Кроме того, программирование TCP действительно легко.Не пугайтесь этого, обнаружение закрытого сокета и повторное подключение синхронно или асинхронно просто.