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

Błąd przekroczenia limitu czasu połączenia mongodb

Chciałem udzielić tej odpowiedzi, ponieważ pojawiło się w pytaniu egzaminacyjnym mongodb dla bezpłatnego uniwersytetu mongodb online. Jest dokładny i dostarcza dokumentacji.

Rozgryzłem to i posprzątam pewne zamieszanie spowodowane głównie brakiem wyjaśnienia na lekcjach. Nie jestem krytyczny, ale potrzebne są dalsze wyjaśnienia, aby właściwie odpowiedzieć na to pytanie.

Po pierwsze, łącząc się z mongodb za pośrednictwem aplikacji, będziesz używać sterownika. Ten sterownik ma bariery, przez które musi przejść, aby zrobić cokolwiek z serwerem mongodb. Kiedy zrozumiesz tę koncepcję bariery, zrozumiesz to pytanie.

Każde połączenie, które ostatecznie tworzy listę rzeczy, musi zaistnieć, aby przejść przez bariery i ostatecznie przeprowadzić operację zapisu lub odczytu.

Wizualnie możesz o tym myśleć w ten sposób:

*****Uwaga**:w dowolnym miejscu tego potoku występuje błąd w oparciu o twoją logikę, a udana operacja zapisu / odczytu może nie nastąpić.

Możemy myśleć o barierach 1 - 3 jako barierach sieciowych łączności. Jeśli sieć nie działa lub występują problemy, są to problemy, które można zauważyć poprzez przekroczenie limitów czasu i obsługę wyjątków tych limitów czasu. Trzeba zrozumieć, że nie możesz wykonać operacji zapisu z problemami związanymi z zapisem, jeśli nie możesz połączyć się z serwerem. Lekcja mogła zilustrować te punkty.

Pierwszym zestawem barier dla operacji zapisu lub odczytu jest ustanowienie połączenia z serwerem... Pokazano to powyżej za pomocą barier 1 - 3.

Następnie, po nawiązaniu połączenia z serwerem za pośrednictwem klastra i/lub zestawu replik klastrów, możesz zdefiniować problemy związane z zapisem.

Po ustanowieniu połączenia zapis może nie nastąpić z powodów innych niż łączność sieciowa. Mogą to być kolizje danych lub ekstremalny przydział zapisów z powodu DDOS lub włamania lub ogólnie brak miejsca na serwerze do zapisania danych na serwerze. Chodzi o to, że coś innego może spowodować reakcję na problem dotyczący zapisu, a tym samym kontrolę za pomocą opcji w celu obsługi błędów dotyczących zapisu.

Mam nadzieję, że to pomoże, ponieważ dzięki temu zrozumiałem pytanie i odpowiednią odpowiedź. Przeważnie tak naprawdę nie uczyliśmy się tego, więc mam nadzieję, że pomoże to innym w nauce i zrozumieniu tego sprzężenia zwrotnego.

Oto kilka artykułów, które przeczytałem, aby pomóc mi dotrzeć do tej odpowiedzi / wniosku. Jeśli ktoś ma lepsze lub lepsze wyjaśnienie w moim wyjaśnieniu, prosimy o przesłanie opinii.

https://scalegrid.io/blog/understanding-mongodb-client- opcje limitu czasu/

https://scalegrid.io/blog/mongodb- pisz-problem-3-musi-wiedzieć-zastrzeżenia/

https://docs.mongodb.com/manual/reference/write-concern/

https://www.mongodb.com/blog /post/wybór-serwera-następnej-generacji-mongodb-sterowniki



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sterownik Mongo db c# - jak dołączyć za pomocą id w kolekcji?

  2. Zapisywanie do MongoDB w pętli

  3. Jak przechowywać pliki w MongoDB?

  4. MongoDB znajdź i usuń - najszybszy sposób

  5. Wstawiaj dokumenty do MongoDB tylko wtedy, gdy wszystkie pola są unikalne