何度か試した結果、Azureのロードバランサーに問題があることがわかりました。
60秒間操作がないと、保留中のTCP接続が切断されます。
さらに掘り下げた後、MongoDB診断FAQのこの投稿を見つけ、tcpキープアライブを120秒に設定しました:
sudo sysctl -w net.ipv4.tcp_keepalive_time=<value>
また、MongoClientのsocketKeepAliveをtrueに設定しました:
MongoClientOptions.Builder options = MongoClientOptions.builder();
options.socketKeepAlive(true);
mongoClient = new MongoClient(mongoAddress, options.build());
これらの修正後、問題はなくなったようです!