Риски изменения частоты приливов - PullRequest
0 голосов
/ 10 сентября 2018

Через iostat Я мог найти пики в записи на диск один раз в минуту. Я думаю, что эти всплески вызваны fsync, так как MongoDB по умолчанию сбрасывает данные на диск каждые 60 секунд. Я также мог бы узнать, что совпадающие с пиками медленные запросы появляются в медленном журнале запросов.

Существует опция под названием storage.syncPeriodSecs , но в соответствии с документацией:

Не устанавливайте это значение в производственных системах. Практически в любой ситуации вы должны использовать настройку по умолчанию.

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

Буду признателен за любые мысли.

подробности:

  • Версия MongoDB: 3.2.16

  • Система хранения: WiredTiger

  • Медленные запросы во время всплеска: пара из них, около 1 секунды. Не останавливать сервер

  • Развертывание: кластер. Наборы реплик с двумя элементами (основной + дополнительный)

  • Технические характеристики: процессор 8 ядер, память 64 ГБ, SSD диск

1 Ответ

0 голосов
/ 17 сентября 2018

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

Обычно не рекомендуется изменять значение syncPeriodSecs в производственной среде, поскольку значением по умолчанию считается правильный баланс между использованием памяти, количеством событий fsync, возможностью потери данных между событиями fsync в сбой и другие соображения в типичной конфигурации оборудования.

Изменение этого значения может ухудшить состояние киосков. Конечно, вы можете провести некоторый эксперимент, изменив его (ниже или выше), чтобы посмотреть, сможет ли он «сгладить» события fsync. Сказав это, это усовершенствованный механизм настройки, который лучше всего резервировать, когда другие опции больше не доступны. Если возможно, такие сбои обычно могут быть решены путем предоставления более качественного оборудования, поскольку кажется, что текущее оборудование испытывает трудности при нагрузке, которую вы ожидаете от него.

...