Я использую огромные коллекции MongoDB с запатентованными + хвостовыми курсорами для передачи сообщений между различными процессами в моей системе. У меня много таких коллекций, для разных типов сообщений, для которых документы написаны с переменными расценками и размерами. На сбор частоты записи могут сильно различаться, но должно быть легко получить типичную/консервативную верхнюю границу размеров и ставок документов от прошлых/текущих действий.Мониторинг использования закрытых коллекций
Кроме того, у меня есть периодическое задание (один раз в час), которое запрашивает сообщения и архивирует их. Важно, чтобы все сообщения были заархивированы, то есть не должны быть удалены до того, как у задания появится возможность архивировать их. (Архивные сообщения записываются в файлы.)
Что я хотел бы сделать, это какой-то мониторинг размера и скорости, который позволит определить верхнюю границу размеров и ставок сообщений, на основе которых я могу принять решение о хороший размер для моих закрытых коллекций.
Я планирую создать некоторый инструмент мониторинга, запустите его некоторое время, чтобы собрать информацию, а затем проанализировать ее и принять решение о хороших размерах для моих закрытых коллекций. Конечно, цель состоит в том, чтобы держать их достаточно маленькими, чтобы не занять слишком много памяти, но достаточно большой, чтобы сделать брошенное сообщение невероятным.
Это информация, которую я думаю, что может помочь:
- количество сообщений и общий размер записанного в последний час (в среднем, в течение долгого времени)
- , сколько времени требуется, чтобы завершить «полный цикл»(в среднем, в течение долгого времени)
- является сбор связанной с макс байтов или макс-документы ограничивают
Что такое лучший способ найти эту информацию, и есть ли другой стат, который кажется актуальным?
Советы по интеграции с Graphite/Carbon также будут замечательными!
Спасибо, но ваш ответ выглядит как общий «графитовый стиль», в то время как мой вопрос касался главным образом mongodb. – shx2