Смысл класса ValueConversionAttribute?

MongoDB не предлагает репликации master-master или множественную совместимость. Другими словами, запись всегда переходит на один и тот же сервер в наборе реплик. По умолчанию даже чтения из вторичных отключены, поэтому поведение по умолчанию заключается в том, что вы обмениваетесь только одним сервером за раз. Поэтому вам не нужно беспокоиться о непоследовательных результатах в безопасном режиме, если вы используете атомные модификаторы (например, $inc, $push и т. Д.).

Если вы не хотите ограничивать себя этими атомными модификаторами, сравнить и поменять, как рекомендовано dcrosta (и mongo docs ) выглядит неплохо. Однако все это не связано с наборами реплик или осколками - это будет одно и то же в односерверном сценарии.

Если вам необходимо обеспечить согласованность чтения и в случае сбоя базы данных / узла, вы следует убедиться, что вы пишете большинство серверов в безопасном режиме.

Оба подхода ведут себя по-другому, если вы разрешаете небезопасные чтения : операции атомного обновления все равно будут работать (но может дать неожиданные результаты), в то время как подход сравнения и свопинга потерпел неудачу.

37
задан H.B. 9 March 2012 в 04:31
поделиться