Исключение времени ожидания MongoDB (C #)

Мы разрабатываем чат-бота с использованием microsoft framework (v3) вместе с API-интерфейсом cosmos mongo. У нас не было проблем до недавнего времени, когда бот внезапно перестал работать локально. При дальнейшей проверке мы обнаружили, что получаем исключение тайм-аута.

«Истекло время ожидания после 30000 мсек при выборе сервера с помощью CompositeServerSelector {Selectors = MongoDB.Driver.MongoClient + AreSessionsSupportedServerSelector, LatencyLimitingServerSelector {AllowedLatencyRange = 00: 00: 00.0150000}}. Клиентское представление состояния кластера:" ClusterIdMode: ":" Состояние кластера: "{ ReplicaSet ", Тип:" ReplicaSet ", Состояние:" Отключено ", Серверы: [{ServerId:" {ClusterId: 1, EndPoint: "Unspecified / hakeemdb.documents.azure.com: 10255"} ", EndPoint:" Unspecified / hakeemdb.documents.azure.com:10255 ", Состояние:" Отключено ", Тип:" Неизвестно "}]}."

Интересно, что бот все еще работает, когда он развернут в скайпе, проблема возникает только локально. При запросе к базе данных напрямую запросы выполняются без сбоев, это только кажется проблемой при локальном запуске бота. Мы обновили все наши драйверы mongo до самых последних стабильных версий, но безуспешно.

Мы также пробовали решения по следующим ссылкам:

MongoDB C # 2.0 TimeoutException

https://jira.mongodb.org/browse/CSHARP-1302

https://jira.mongodb.org/browse/CSHARP-2540

Я также нашел этот пост о переполнении стека:

Тайм-аут драйвера MongoDB C #

но я немного не уверен, что это означает, хотя, похоже, это очень близко к проблеме, с которой мы сталкиваемся.

Я не включил никакого кода, потому что не думаю, что это проблема кода, поскольку она началась без каких-либо изменений в каком-либо коде.

Еще один момент, который может быть важным, заключается в том, что недавно все наши ресурсы в лазурном состоянии были перемещены в новый регион, поэтому во время этого что-то могло измениться. Мы подумали, что, возможно, некоторые настройки безопасности были изменены во время миграции, и IP-адрес нашего рабочего места был заблокирован, но база данных, похоже, настроена так, чтобы разрешать соединения из всех источников, поэтому я не уверен, что это проблема

Будем очень признательны за любые советы или идеи


person Hugh O'Brien    schedule 05.06.2019    source источник
comment
Вы проверили настройку часового пояса в кластере MongoDB?   -  person rinesh    schedule 05.08.2019
comment
@rinesh Мне действительно следовало закрыть это. В конце концов сеть Wi-Fi на моей работе обновила свои настройки брандмауэра, и один из портов, которые мы использовали для Mongo, был заблокирован. Мы обошли ограничения порта, подключившись к физической локальной сети, и после этого все заработало.   -  person Hugh O'Brien    schedule 06.08.2019


Ответы (1)


В конце концов сеть Wi-Fi на моей работе обновила свои настройки брандмауэра, и один из портов, которые мы использовали для Mongo, был заблокирован. Мы обошли ограничения порта, подключившись к физической локальной сети, и после этого все заработало.

person Hugh O'Brien    schedule 06.08.2019