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

MongoDB+Azure+Android:Błąd:com.mongodb.MongoException:brak połączenia z masterem i ponawianie prób

Przyczyną sporadycznych błędów są domyślne preferencje odczytu sterownika, głównie w odniesieniu do zestawów replik. Domyślna preferencja odczytu to podstawowa. Dla każdego z wymienionych poniżej trybów PRIMARY odnosi się do bazy danych master (zawsze najbardziej aktualnej), a SECONDARY odnosi się do slaveów, które są w zasadzie kopiami master i nie zawsze są aktualne.

PRIMARY: The default read mode. Read from primary only. Throw an error if
         primary is unavailable. Cannot be combined with tags.

Rozwiązanie umożliwiające zmianę preferencji odczytu na jedną z następujących:

PRIMARY PREFERRED: Read from primary if available, otherwise a secondary.
SECONDARY PREFERRED: Read from a secondary if available, otherwise read from the primary.
NEAREST: Read from any member node from the set of nodes which respond the fastest.

Przykładowy kod:

// Use this when doing a read if you don't care if the data is always consistent.
// Change the following with secondaryPreferred() if you have high writes, so
// that you don't interfere with them.
ReadPreference preference = ReadPreference.primaryPreferred();
DBCursor cur = new DBCursor(collection, query, null, preference);

Więcej informacji znajdziesz w źródle .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak zwrócić ObjectId lub _id dokumentu w MongoDB? a błąd $in wymaga tablicy

  2. Jak wykonywać podstawowe operacje na zapytaniach w MongoDB

  3. Jak mogę sprawdzić, czy pole istnieje, czy nie w MongoDB?

  4. Agregacja w Golang mgo dla Mongodb

  5. MongoDB Zapisz wyrażenia regularne, takie jak adres e-mail, nazwa użytkownika