MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Limit czasu połączenia z MongoDb na maszynie wirtualnej platformy Azure

Po kilku poszukiwaniach tutaj moje rozważania:

  • Dobrą praktyką jest zazwyczaj zaimplementowanie logiki ponawiania prób w każdym zasobie, do którego uzyskujesz dostęp na platformie Azure (baza danych, maszyna wirtualna, ...). W przypadku MongoDb istnieje częściowa implementacja, więc powinieneś potencjalnie napisać własną. Zobacz także ten problem i to .
  • Jeśli to możliwe, wszystkie zasoby na platformie Azure powinny znajdować się w tej samej sieci wirtualnej platformy Azure (w ten sposób wszystkie połączenia są nawiązywane przy użyciu prywatnego adresu IP platformy Azure zamiast publicznego adresu IP. Jest to również przydatne ze względów bezpieczeństwa, ponieważ nie trzeba otwierać punktu końcowego publicznie.
  • Wdrażając MongoDb na platformie Azure, postaraj się postępować zgodnie z oficjalnymi wytycznymi MongoDb .
  • W tym konkretnym przypadku powinieneś ustawić net.ipv4.tcp_keepalive_time do wartości niższej niż tcp utrzymywania aktywności platformy Azure, która domyślnie wynosi 240 sekund. W ten sposób połączenie zostaje zamknięte, a sterownik MongoDb może przechwycić ten warunek i otworzyć nowe połączenie. Jeśli połączenie zostanie zamknięte przez platformę Azure, sterownik nie może go przechwycić. Jeśli chcesz zmienić to ustawienie na platformie Azure (niezalecane), możesz je znaleźć w konfiguracji publicznego adresu IP.

W moim środowisku programistycznym ustawiłem net.ipv4.tcp_keepalive_time do 120 i teraz wszystko wydaje się działać bez zarzutu. Weź pod uwagę, że jeśli hostujesz MondoDb w kontenerze Docker, powinieneś ustawić to ustawienie na hoście Docker.

Oto kilka innych przydatnych linków:



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. 2 sposoby na usunięcie bazy danych w MongoDB

  2. Otrzymuję błąd podczas wdrażania aplikacji Node.Js z mongoDB na Elastic Beanstalk

  3. Porównanie danych MongoDB Spring między polami

  4. arrayFilters podczas aktualizacji php mongodb

  5. struktura folderów dla stosu MEAN