Адаптивное управление и контроль трафика
Ключевой особенностью Ключ-АСТРОМ является возможность распределенной трассировки PurePath® . Одна распределенная трассировка PurePath представляет собой полную сквозную распределенную трассировку.
В отличие от других технологий трассировки распределенные трассировки в Ключ-АСТРОМ автоматически перехватываются ЕдиныйАгент. В дополнение к трассировкам на уровне служб и времени отклика распределенные трассировки также обеспечивают глубокую аналитику на уровне кода, что позволяет проводить анализ горячих точек методов, атрибутов запросов, запросов и баз данных, а также подробный анализ ошибок.
Все это предоставляется автоматически, без дополнительной настройки, с распределенной трассировкой Ключ-АСТРОМ. Трассировка на основе технологии PurePath также является одним из основных компонентов, позволяющих Davis®, Ключ-АСТРОМ AI, выполнять автоматическое базовое определение и анализ первопричин. В поддержку этого распределенная трассировка Ключ-АСТРОМ обеспечивает высочайший уровень детализации и точности данных на рынке.
Высокоточная распределенная трассировка Ключ-АСТРОМ
Ключ-АСТРОМ ЕдиныйАгент отслеживает каждую распределенную транзакцию от начала до конца. ЕдиныйАгент фиксирует большее количество распределенных трассировок, чем любая другая технология трассировки на рынке. При стандартной настройке каждый агент Ключ-АСТРОМ ЕдиныйАгент ежеминутно фиксирует определенное количество новых сквозных распределенных трассировок в рамках каждого отслеживаемого процесса. Каждая сквозная распределенная трассировка содержит информацию на уровне кода и бизнес-аналитику. Распределенная трассировка может содержать множество вызовов службы на множество уровней. Благодаря полному сквозному захвату для каждой трассировки уровни второго и третьего уровней часто фиксируют больше общих вызовов службы, чем процессы точки входа.
Благодаря высокой точности отслеживания Ключ-АСТРОМ в большинстве случаев фиксирует каждую распределенную транзакцию. В частности, при больших объемах обращений уровни с одной точкой входа могут обрабатывать больше запросов, чем это. Постоянный захват всех трассировок в таких ситуациях может привести к увеличению требований к пропускной способности сети. Для этого Ключ-АСТРОМ ЕдиныйАгент предоставляет встроенный ограничитель. Каждому контролируемому ЕдиныйАгент процессу разрешается запускать заданное количество распределенных трассировок в минуту. Этот лимит можно назвать квотой.
Как только квота распределенных трассировок достигнута, ЕдиныйАгент применяет интеллектуальный механизм, который максимально эффективно использует отслеживаемый трафик. Такой подход называется «адаптивное управление трафиком».
SaaS vs Managed — адаптивное управление трафиком версии 1 и версии 2
Версия 1 — управляемая Ключ-АСТРОМ
В версии 1 адаптивного управления трафиком каждому процессу разрешено запускать фиксированное количество 1000 новых распределенных трассировок в минуту. Эта версия в настоящее время используется по умолчанию и активна для большинства управляемых кластеров Ключ-АСТРОМ . Это хорошо работает, но имеет недостаток. Если в вашей архитектуре есть точка входа с большим объемом (например, балансировщик нагрузки или NGINX), которая превышает это значение, ваш трафик будет ограничен там. Кроме того, такое поведение также приводит к отправке трафика в Ключ-АСТРОМ, который может реагировать резко в зависимости от трафика вашего приложения.
Версия 2 — Ключ-АСТРОМ SaaS
В версии 2 адаптивного управления трафиком ограничение каждого процесса автоматически адаптируется и настраивается таким образом, что общий допустимый объем вызовов службы в минуту отправляется в Ключ-АСТРОМ независимо от архитектуры вашего приложения.
- Допустимый объем в минуту основан на активно используемых хост-устройствах в данной среде: 250 вызовов полного обслуживания x активных хост-устройств .
- Допустимый объем масштабируется с вашей лицензией, гарантируя справедливую стоимость для всех наших клиентов.
Пример. Средняя среда, состоящая из 50 хостов по 32 ГБ каждый (100 хост-модулей), будет обрабатывать до 25 000 вызовов полного обслуживания в минуту.
Преимущества этой системы:
- Точки входа с большим объемом могут отправлять больше трассировок, поскольку управление трафиком осуществляется на основе общего объема, отправляемого в среду Ключ-АСТРОМ.
- Приложения с малым объемом делят неиспользуемый объем транзакций с приложениями с большим объемом, которым он необходим.
- Хосты инфраструктуры не отправляют трассировки, но увеличивают общий допустимый объем.
- Сетевой трафик, отправляемый в Ключ-АСТРОМ, менее скачкообразный, так как трафик управляется на основе общего объема.
Эта версия в настоящее время активна во всех средах Ключ-АСТРОМ SaaS .
Адаптивное управление трафиком на Ключ-АСТРОМ ЕдиныйАгент
Адаптивное управление трафиком гарантирует, что каждый агент ЕдиныйАгент регистрирует минимальное количество новых распределенных трассировок каждую минуту, тем самым ограничивая объем отправляемых данных. В то же время он гарантирует, что все важные трассировки будут полностью зафиксированы и что для более частых, но менее важных запросов поддерживается статистически достоверный набор трассировок.
Для этого ЕдиныйАгент вычисляет список самых популярных запросов, которые запускаются каждую минуту. Типичные приложения не имеют равномерного распределения запросов. Скорее, есть несколько типов запросов, которые составляют большую часть трафика (например, запросы изображений или проверки статуса), среднее количество важных запросов и большое количество уникальных URL-адресов. Основываясь на списке самых популярных запросов, ЕдиныйАгент захватывает трафик таким образом, что запросы с наибольшим объемом захватываются реже (тем самым избегая захвата «большего количества одинаковых»), в то время как каждый уникальный или редкий запрос захватывается.
В следующей таблице представлен такой пример расчета топ-запросов вместе с соответствующими коэффициентами охвата.
Запрос | Количество запросов, обработанных приложением | Фактор захвата | Захваченные распределенные трассировки |
---|---|---|---|
URI А | 900 | 1/2 | 450 |
URI Б | 440 | 1/2 | 220 |
URI С | 250 | 1 | 250 |
URI Д | 60 | 1 | 60 |
50 других URI | 100 | 1 | 100 |
Общий: | 1500 | 1080 |
В этом примере ЕдиныйАгент будет захватывать чуть более 1000 запросов в минуту, так как в данном примере это настроенный целевой номер запроса. URI C, D и 50 других URI захватываются каждый раз, в то время как A и B захватываются только в 50% случаев. Тем не менее, ЕдиныйАгент по-прежнему отслеживает эти запросы от начала до конца более 600 раз в минуту.
Почти во всех случаях вы не заметите такого поведения. Ключ-АСТРОМ сохраняет информацию о скорости захвата и соответственно рассчитывает время отклика, пропускную способность и частоту ошибок. Все диаграммы и сервисный анализ показывают экстраполированные данные, основанные на исходной частоте захвата. Ключ-АСТРОМ AI по-прежнему имеет более чем достаточно данных (больше, чем любое другое решение APM), чтобы предоставить вам полезную информацию и подробный анализ основных причин обнаруженных проблем. Вы можете увидеть это поведение, если посмотрите на отдельную распределенную трассировку в списке распределенных трассировок, где указано 3 more like this
. Это указывает на то, что запрос был перехвачен один раз, в то время как было еще три таких же запроса, которые были обработаны отслеживаемым приложением, но не были включены в анализ.
При таком подходе адаптивное управление трафиком значительно экономит полосу пропускания сети, а в случае Ключ-АСТРОМ Managed — драгоценные ресурсы ЦП, памяти, сети и хранилища, которые в противном случае потребовались бы для обработки и хранения этих данных.
Мониторинг адаптивного управления трафиком
Ключ-АСТРОМ версии 1.232+
Для отслеживания фактического использования и пороговых значений адаптивного управления трафиком Ключ-АСТРОМ предоставляет специальные показатели самоконтроля.
Вы можете интегрировать эти показатели самоконтроля в свою собственную настраиваемую панель мониторинга или создать специальную панель мониторинга, подобную той, что показана ниже, для отображения исторической и текущей скорости захвата.
Необходимые метрические выражения, используемые для построения этой информационной панели, перечислены ниже:
Ценность | Выражение метрики |
---|---|
Вызовы с полным обслуживанием, полученные кластером | dsfm:server.service_calls.received:splitBy():sum:auto:rate(1m)
|
Вызовы с полным обслуживанием обрабатываются ЕдиныйАгент | dsfm:ЕдиныйАгент.service_calls.processed:splitBy():sum:auto:rate(1m)
|
Максимально допустимый полный сервисный вызов / мин | dsfm:server.service_calls.maximum_allowed_per_minute:splitBy():avg:auto:auto
|
Скорость захвата ЕдиныйАгент | (dsfm:server.service_calls.received:splitBy():sum:auto)/ (dsfm:ЕдиныйАгент.service_calls.processed:splitBy():sum:auto)*(100)
|
Это используемые показатели
Метрика самоконтроля | Описание |
---|---|
dsfm:ЕдиныйАгент.service_calls.processed
|
Количество вызовов с полным обслуживанием, обработанных ЕдиныйАгент. |
dsfm:server.service_calls.received
|
Количество вызовов с полным обслуживанием, полученных кластером Ключ-АСТРОМ. |
dsfm:server.service_calls.maximum_allowed_per_minute
|
Максимально допустимое количество вызовов с полным обслуживанием в минуту в зависимости от вашей лицензии. |
Адаптивное снижение нагрузки в Ключ-АСТРОМ Managed
Благодаря простоте развертывания ЕдиныйАгент инструментирование новых приложений, хостов или даже больших дополнительных сред не составляет труда. Клиенты часто подключают к Ключ-АСТРОМ сотни хостов и приложений в день. Это, конечно, значительно увеличивает количество распределенных трассировок, которые обрабатываются кластером Ключ-АСТРОМ Managed.
Иногда первоначальные соображения по размеру управляемых узлов и кластеров Ключ-АСТРОМ недостаточны для поддержки такого объема; кластеру, управляемому Ключ-АСТРОМ, может не хватать необходимого оборудования для обработки всех дополнительных входящих данных. Чтобы защитить работоспособность и целостность вашей среды мониторинга в таких ситуациях, Ключ-АСТРОМ Managed использует адаптивное снижение нагрузки на входящие трассировки, чтобы гарантировать, что мониторинг остается стабильным, пока для анализа собирается статистически достоверный набор запросов.
Каждый управляемый узел Ключ-АСТРОМ может обрабатывать определенное количество вызовов службы в минуту (распределенная трассировка состоит из множества вызовов службы). Количество вызовов, которые могут быть обработаны, зависит от количества процессоров и объема памяти, доступной узлу. Как только этот предел нарушается, включается адаптивное снижение нагрузки.
Новые распределенные трассировки, поступающие из сред с самым высоким трафиком по отношению к назначенным им хост-устройствам (т. е. трафик/хост-модуль), сначала обрабатываются для снижения нагрузки. В этих средах Ключ-АСТРОМ Managed пропускает полную обработку распределенной трассировки. Это происходит случайным образом и уменьшает количество распределенных трассировок, которые обрабатываются поэтапно. В то же время сохраняется статистическая достоверность всех метрик, диаграмм, базовых показателей и событий, поскольку Ключ-АСТРОМ знает количество пропущенных распределенных трассировок. Это полностью прозрачно для вас, поскольку Ключ-АСТРОМ создает событие и отображает сообщение в пользовательском интерфейсе кластера.
Как и в случае с управлением трафиком ЕдиныйАгент, сокращение объема обрабатываемых данных учитывается прозрачным образом. Это успешно защитит ваш кластер от всплесков трафика. Если такие ситуации единичны, тот факт, что не все данные обрабатываются, не оказывает негативного влияния на ваш мониторинг. Ключ-АСТРОМ AI никак не затрагивается и не выдает предупреждения. Все данные диаграмм на основе сервисов прозрачно корректируются (без видимых изменений), и это учитывается во всех аналитических представлениях. Вы не увидите разницы в диаграммах или данных анализа вызовов службы, если вы не смотрите на один PurePath. Единственное место, где это видно, — это список распределенных трассировок, в котором отображается сообщение типа x more like this
.
Целевыми являются только те среды, которые имеют большой объем трафика по сравнению с назначенными им узлами. Все остальные среды остаются незатронутыми.
Если адаптивное снижение нагрузки задействуется только время от времени, чтобы покрыть пики, все, что вам нужно знать, это то, что это не должно быть долгосрочным решением. Хотя адаптивное управление трафиком ЕдиныйАгент активно формирует трафик, описанная здесь функция существует только в качестве защиты. Например, спорадический инцидент ALR, который происходит раз в неделю в течение 15 минут, не обязательно означает, что кластер перегружен. Это может быть вызвано необычным скачком нагрузки или временным сбоем в сети.
Если адаптивное снижение нагрузки используется на постоянной основе в течение более длительных периодов (более 15 минут) и особенно в ситуациях, когда ALR активен все время, тот факт, что не все данные обрабатываются, может подорвать ваш мониторинг, метрики и общие данные. качественный. Чтобы предотвратить такой сценарий, вам нужно выбрать один из двух доступных вариантов. Вы можете добавить дополнительное оборудование и новый узел кластера Ключ-АСТРОМ Managed.предоставить вашему управляемому кластеру Ключ-АСТРОМ необходимые ресурсы для обработки дополнительных данных. Или вы можете уменьшить входящий трафик, настроив параметры управления трафиком для агентов ЕдиныйАгент среды. Вы также можете рассмотреть эти варианты в адаптивном управлении трафиком, когда вам недостаточно статистической корректности сбора данных и вам нужна более высокая точность данных.
Адаптивное управление захватом
В Ключ-АСТРОМ Managed вы можете определить целевое количество недавно отслеживаемых распределенных трассировок точек входа, захватываемых на процесс в минуту.
По умолчанию число вновь отслеживаемых распределенных трассировок точек входа, захваченных на процесс в минуту, составляет 1000, что уже является большим числом. Изменение этого параметра может быть полезно в некоторых ситуациях. У вас может быть среда нагрузочного тестирования, которая потребляет слишком много сетевых, дисковых и ЦП ресурсов в вашем управляемом кластере Ключ-АСТРОМ, и вы предпочитаете использовать эту среду для производственного мониторинга. Вы можете уменьшить точность распределенной трассировки среды и, таким образом, уменьшить процент отслеживаемого входящего трафика. Другими словами, тесты могут обеспечить достаточную степень детализации данных даже после сокращения количества трасс до 500 или 100 в минуту.
Уменьшая количество захваченных распределенных трассировок, вы не меняете ни метрики, ни функции анализа службы. За пределами самого списка распределенных трасс это изменение учитывается прозрачным образом и учитывается во всех анализах.
В качестве альтернативы вы можете увеличить количество распределенных трассировок точек входа, захватываемых на процесс в минуту в наиболее важных средах, чтобы получить еще более высокую точность, чем по умолчанию. Верхний предел составляет 100 000 новых сквозных запросов/процессов/мин. Это эффективно указывает ЕдиныйАгент захватывать все запросы. Это полезно, когда вам нужно обеспечить захват даже редких запросов в средах с большим объемом.
Будьте осторожны, устанавливая это значение слишком высоким, так как это может привести к тому, что ваш управляемый кластер Ключ-АСТРОМ окажется в ситуации нехватки ресурсов и вынудит вас добавить дополнительное оборудование. Вы можете использовать этот параметр, чтобы эффективно обеспечить захват каждой отдельной транзакции за счет увеличения затрат на оборудование.
Адаптивное управление захватом для групп процессов
В определенных ситуациях может потребоваться уменьшить количество распределенных трассировок, захваченных для определенных процессов или групп процессов. Чтобы приспособиться к этому, вы можете уменьшить количество захваченных транзакций для конкретной среды для определенных групп процессов.
Перейдите в « Настройки » > « Мониторинг службы на стороне сервера» > « Глубокий мониторинг» .
Как видите, эта функция дополнительно позволяет администратору среды сократить количество распределенных трассировок во всей среде. Это полезно для уменьшения объема сетевого трафика, создаваемого ЕдиныйАгентs во всей среде.
Часто задаваемые вопросы
Как адаптивное управление трафиком влияет на графики, базовые показатели и оповещения?
Короткий ответ: нисколько.
Формирование трафика учитывается прозрачно и выполняется таким образом, чтобы обеспечить статистическую достоверность при захвате редких запросов с высокой вероятностью. На всех диаграммах показано общее реальное количество запросов, обрабатываемых вашим приложением, а также весь специальный анализ, который вы можете выполнить. Это не влияет на Ключ-АСТРОМ AI. Единственное место, где видно это формирование трафика, — это список распределенных трассировок, в котором отображается сообщение вроде x more like this
.
Почему я не могу найти свой запрос?
Если размер вашего управляемого кластера Ключ-АСТРОМ недостаточен или интересующий вас конкретный запрос исходит от уровня с большим объемом (более 1000 запросов в минуту), Ключ-АСТРОМ может не зафиксировать запрос. ЕдиныйАгент делает все возможное, чтобы захватить все уникальные запросы, но есть ограничения на то, что можно сделать. Мы продолжим работать над совершенствованием этого механизма. Вы можете уменьшить объем производимого трафика, исключив из захвата неважные запросы; это делается с помощью атрибутов веб-запроса и правил исключения URL-адресов. Такой подход оставляет больше места для важных запросов.
Если это важно для вас, вы также можете увеличить количество захваченных распределенных трассировок в Ключ-АСТРОМ Managed.
Что такое полный сервисный звонок?
Полный сервисный вызов — это вызов на стороне сервера, который запускает распределенную трассировку, сервисный вызов на уровне глубокого мониторинга или настраиваемые сервисные вызовы. Внешние вызовы (такие как вызовы базы данных, внешние веб-запросы или вообще любые непрозрачные вызовы службы) не являются вызовами полного обслуживания, поэтому они не учитываются в вашем лимите трафика. Ключ-АСТРОМ считает все запросы к службам веб-запросов и веб-служб (кроме внешних), службам RMI, службам обмена сообщениями и пользовательским службам.
Что такое активная хост-единица?
Активные хост-устройства — это хост-устройства, используемые в данный момент и подключенные к среде (а не хост-устройства, назначенные среде).
Каково минимальное количество вызовов полного обслуживания/мин в данной среде?
Минимальное количество вызовов полного обслуживания в минуту в данной среде составляет 5000, что эквивалентно 20 хост-устройствам.
Каково минимальное и максимальное количество следов, которые может создать процесс?
Система автоматически адаптирует ЕдиныйАгент между 50–50 000 трассировок в минуту, чтобы соответствовать общему объему трафика, достигающему системы Ключ-АСТРОМ