Поделиться через


Работоспособности репозитория

В Azure DevOps наша цель — обеспечить отличное качество обслуживания для всех наших клиентов. Поддержание оптимальной работоспособности репозитория имеет решающее значение для обеспечения производительности и надежности.

Для повышения этой цели мы активно отслеживаем различные факторы, которые способствуют работоспособности репозитория. Эти факторы включают размер, частоту фиксации, содержимое, структуру и многое другое. Если репозиторий чрезмерно влияет на нашу инфраструктуру, вы можете получить сообщение электронной почты от нашей группы поддержки с просьбой принять корректирующие меры. Эффективно управляя размером и общей работоспособностью репозитория, вы можете предотвратить негативное влияние на нашу инфраструктуру и производительность.

Чтобы обеспечить оптимальную работоспособность репозитория, можно использовать панель "Работоспособность репозитория и использование".

В веб-браузере перейдите в репозиторий Azure Repos Git. Выберите "Файлы репозитория > " и выберите "Работоспособное состояние и использование" в меню с многоточием, чтобы открыть панель "Работоспособное состояние репозитория и использование".

Снимок экрана: пункт меню

На панели "Работоспособность репозитория и использование" показаны факторы, влияющие на работоспособность репозитория.

Снимок экрана: работоспособность и использование репозитория.

Факторы, которые считаются неработоспособными, будут выделены красным цветом, а факторы, близкие к неработоспособности, будут выделены в янтаре.

На этой странице приведены описания и советы по некоторым общим метрикам.

Общий доступный размер репозитория

Этот параметр показывает, сколько места в репозитории потребляется на диске.

Рекомендуется сохранить размер репозитория до 100 ГБ для оптимальной производительности. Небольшие репозитории быстрее клонировать и упростить управление и обслуживание. Если ваш репозиторий превышает этот размер, рассмотрите возможность использования артефактов разработки с помощью Git-LFS, Scalar или Azure Artifacts.

Количество доступных объектов

Этот параметр указывает количество объектов в репозитории, которые доступны из любой ссылки или тега. Объекты включают не только файлы (большие двоичные объекты), но и каталоги, фиксации и теги. Дополнительные сведения о Git-Internals-Git-Objects.

Чем больше количество объектов, тем больше времени занимает Git для обхода журнала репозитория, влияющего на время отображения журнала фиксаций и других объектов. Кроме того, реализация ADO имеет ограничение объекта жесткого ограничения. Azure Repos не может содержать более 100 миллионов объектов в одном репозитории.

Количество ссылок

"Число ссылок" отображает общее количество ссылок в репозитории.

Если репозиторий Git содержит более 10 000 ссылок, рекомендуется включить ограниченные ссылки. По мере увеличения числа ссылок данные, которые необходимо согласовать между клиентом и сервером. Чем больше данных, которые должны быть согласованы, тем тяжелее нагрузку на сервере и чем больше данных, которые потенциально передаются клиенту, что приводит к снижению взаимодействия с пользователем.

Количество доступных больших двоичных объектов

"Число доступных больших двоичных объектов" отображает общее количество доступных больших двоичных объектов в репозитории.

Рекомендуется поддерживать разумное количество файлов BLOB-объектов, как упоминалось в этой Number of reachable objectsстатье. Также важно зарезервировать некоторое пространство для объектов других типов.

Количество доступных деревьев

"Число доступных деревьев" показывает общее количество доступных объектов дерева в репозитории.

Большое количество файлов дерева может сделать обход по журналу дорогостоящим и может замедлить несколько функций Git, таких как git blame.

Объекты дерева растут по мере увеличения числа каталогов и файлов. Git необходимо создать копию каждого дерева, которое приводит к файлу при каждом изменении файла. Поэтому изменение только одного файла несколько раз может привести к большому количеству файлов дерева.

Примечание.

Распределение файлов между несколькими каталогами и подкаталогами предпочтительнее иметь один каталог с многочисленными прямыми записями.

Рекомендуется поддерживать разумное количество объектов дерева, как показано в разделе Number of reachable objects. Кроме того, важно выделить некоторое пространство для объектов других типов.

Количество доступных фиксаций

Параметр "Число доступных фиксаций" представляет общее количество доступных объектов фиксации в репозитории.

Рекомендуется сохранить разумное количество объектов фиксации, как показано в Number of reachable objects разделе. Кроме того, необходимо зарезервировать некоторое пространство для объектов других типов.

Количество доступных тегов

"Число доступных тегов" отображает общее количество доступных объектов тегов в репозитории.

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

Рекомендуется сохранить разумное количество объектов тегов, как показано в Number of reachable objects разделе. Кроме того, необходимо зарезервировать некоторое пространство для объектов других типов.

Количество файлов, не относящихся к диффекции

Отображение количества двоичных файлов или ресурсов мультимедиа, для которых не удалось вычислить дифф.

Хранение таких файлов в Git не рекомендуется. Разные версии таких файлов не хорошо отличаются друг от друга, что означает, что Git не может эффективно хранить их. Рассмотрите возможность использования Git-LFS, Scalar или Azure Artifacts, что позволяет хранить такие файлы и сохранять репозиторий в работоспособном состоянии и поддерживать его. Дополнительные сведения см. в статье Администрирование и хранение больших файлов в Git.

Примечание.

Если вы используете API push-отправки REST, файлы не диффектируются, и это очень неэффективно для отправки объектов, которые обычно являются диффектируемыми.

Размер доступных больших двоичных объектов

Параметр "Размер доступных BLOB-объектов" отображает общий размер больших двоичных объектов на диске в гигабайтах.

В соответствии с разделом "Общий доступный размер репозитория" рекомендуется сохранить его менее 100 ГБ и оставить некоторое место для объектов других типов.

Размер доступных деревьев

Параметр "Размер доступных деревьев" показывает общий размер объектов дерева на диске в гигабайтах.

В соответствии с разделом "Общий доступный размер репозитория" рекомендуется сохранить его менее 100 ГБ и оставить некоторое место для объектов других типов.

Размер доступных фиксаций

Параметр "Размер доступных фиксаций" показывает общий размер объектов фиксации на диске в мегабайтах.

В соответствии с разделом "Общий доступный размер репозитория" рекомендуется сохранить его менее 100 ГБ и оставить некоторое место для объектов других типов.

Размер доступных тегов

Параметр "Размер доступных тегов" показывает общий размер объектов тегов на диске в мегабайтах.

В соответствии с разделом "Общий доступный размер репозитория" рекомендуется сохранить его менее 100 ГБ и оставить некоторое место для объектов других типов.