ArcGIS Server предоставляет возможность использовать либо общие экземпляры, либо выделенные экземпляры для каждого совместимого картографического сервиса, опубликованного на сайте ArcGIS Server из ArcGIS Pro. Работа с общими экземплярами экономит использование памяти путем объединения нескольких активных серверных процессов в пул для нескольких сервисов. Это позволяет сократить потребление памяти сервисами, которые не обрабатывают запросы активно.
Прежние версии:
До версии 10.7 все сервисы использовали модель, которая теперь называется выделенными экземплярами.
Таким образом, общие экземпляры рекомендуется использовать для сервисов, получающих нечастые запросы, особенно когда на сайте сервера размещается много сервисов. С другой стороны, выделенные экземпляры делают сервис всегда доступным для обработки запросов с помощью одного или нескольких серверных процессов и идеально подходят для сервисов, получающих постоянные или особенно ресурсоемкие запросы.
В этом разделе описываются экземпляры и процессы сервисов, рекомендации для общих и выделенных экземпляров, а также шаги по настройке параметров экземпляра сервиса.
Введение тему в экземпляров сервисов
Запрос к сервису на сайте ArcGIS Server, например, перемещение карты или навигация по адресу, обрабатывается экземпляром опубликованного сервиса, запущенного на компьютере сервера. Экземпляры сервисов работают на базе собственных серверных процессов Esri, называемых процессами ArcSOC. Каждый процесс ArcSOC потребляет для работы некоторое количество памяти компьютера.
Если на сайте ArcGIS Server имеется много сервисов, и каждый из них использует один или несколько экземпляров сервисов, которые всегда работают, доступная память компьютера может в конечном итоге достичь своего предела. Кроме того, организация тратит энергию на запуск экземпляров сервисов, а при развертывании ArcGIS Server в облачной инфраструктуре каждый запущенный экземпляр сервиса несет прямые денежные затраты.
Соответственно, администраторам ArcGIS Server важно отслеживать количество запущенных экземпляров сайта и ограничивать число запущенных экземпляров, если производительность тормозится использованием памяти.
Пользователи ожидают быстрых результатов при взаимодействии с вашими сервисами (включая продукты, созданные на основе сервисов, такие как веб-карты и приложения). Для обработки трафика, получаемого сервисами, требуются соответствующие процессы ArcSOC. Однако подготовка большего количества ресурсов сервера, чем требуется сервису, приводит к потере памяти компьютера, энергии и денег. Хорошей целью для администраторов является сокращение числа запущенных экземпляров сервисов до необходимого количества без ущерба для производительности.
Дополнительные сведения об активных стратегиях управления для оптимизации производительности ArcGIS Server см. в разделе Прогнозирование числа пользователей и их распределение.
Примечание:
Вы можете проверить процессы ArcSOC в своей среде, чтобы определить, какие ArcSOC запущены для каждого серверного сервиса на базе сервера на вашей машине ArcGIS Server.
Вы можете выполнить команду ps -ef | grep arcsoc на своей машине Linux и проверить параметр -Dservice= для каждого процесса, чтобы найти имя сервиса, связанное с процессом ArcSOC.
Минимальное и максимальное число экземпляров сервисов
Для каждого сервиса, опубликованного на сайте ArcGIS Server, который использует выделенные экземпляры, можно указать минимальное число запущенных выделенных экземпляров и максимальное число экземпляров, которые могут выполняться для сервиса с помощью ArcGIS Server Manager. Например, если вы зададите для этого параметра значение три экземпляра, то в любой момент времени в процессах ArcSOC всегда будет по крайней мере три экземпляра, даже если сервис не используется.
Если установить минимальное число экземпляров равным нулю, сервис не будет иметь запущенных экземпляров, если он не используется. Отключение неиспользуемого сервиса экономит память, но здесь есть недостаток: в следующий раз, когда пользователь отправляет запрос в сервис, он получает отложенный ответ. Этот холодный запуск ArcGIS Server при включении экземпляра для обработки запроса на обслуживание может быть заметен пользователю, отправляющему запрос.
Общие и выделенные экземпляры
Общий пул экземпляров запускается на каждом компьютере сайта, если сервисы настроены для его использования. Сервисы, использующие общий пул экземпляров, больше не несут затрат на использование ресурсов, если они не обрабатывают запросы, и нет потерь от холодного запуска.
Подсказка:
Чтобы определить, из какого приложения был опубликован картографический сервис, см. Шаг 3 в разделе Настройка типа экземпляра для сервиса ниже.
Следующие ограничения определяют, какие сервисы могут использовать общий пул экземпляров:
- Только картографический сервис, опубликованный из ArcGIS Pro, может быть настроен для использования общего пула экземпляров. Другие типы сервисов, такие как сервисы геообработки, не поддерживаются.
- Можно включить только определенные возможности картографических сервисов – доступ к объектам, WFS, WMS и KML. Перед продолжением работы отключите все другие возможности.
- Кэшированные картографические сервисы, опубликованные из ArcGIS Pro на основе вышеизложенных требований, могут использовать общие экземпляры.
Прежние версии:
В версиях до 10.8.1 сервисы с расширениями объектов сервера (SOEs) или перехватчиками серверных объектов (SOIs) не могли использовать пулы общих экземпляров.
Общие экземпляры отличаются от выделенных экземпляров, которые запускают только определенный сервис до тех пор, пока они не будут выключены. Выделенные экземпляры по-прежнему являются допустимым вариантом для администраторов, особенно для работы сервисов с высоким трафиком. Это необходимо как для обеспечения оптимальной производительности этих сервисов путем предоставления им ресурсов выделенного сервера, так и для предотвращения использования сервисами с высоким трафиком всех процессов в пуле.
Примечание:
При обновлении ArcGIS Server до 11.3 с 10.6.1 или более ранней версии, минимальные настройки экземпляров для сервисов не изменятся, но пул процессов ArcSOC по умолчанию будет выделен для общих экземпляров. Если требуется настроить общие экземпляры для некоторых или всех сервисов, это можно сделать после обновления.
Применение каждого типа экземпляров
Ни один из типов экземпляров не является оптимальным для всех картографических сервисов. Администратор сайта сервера может решить, какой пул экземпляров должен использовать каждый сервис, опубликованный на сайте.
Вы можете настроить общие экземпляры для некоторых сервисов, предоставив другим сервисам их собственные выделенные процессы ArcSOC. Эту конфигурацию разделения можно выбрать, если известно, что некоторые сервисы получают непрерывные запросы, а другие используются реже. Если все сервисы получают запросы только изредка, рассмотрите возможность настройки общих экземпляров для всех сервисов для экономии памяти.
Подсказка:
Шаблоны использования часто меняются, поэтому при мониторинге сайта настройте параметры типа экземпляра по своему усмотрению в зависимости от трафика и производительности сервера.
Общий пул экземпляров подходит для совместимых картографических сервисов, таких как:
- Сервисы, которые используются не часто. Это зависит от развертывания, но для большинства развертываний это означает в среднем менее одного запроса на обслуживание в минуту.
- Сервисы, для которых вы уже установили минимальное значение выделенных экземпляров равным нулю.
- Большинство кэшированных картографических сервисов.
Напротив, выделенный пул экземпляров остается оптимальным вариантом для таких сервисов:
- Сервисы, которые вы выполняете по соглашению на уровне сервиса.
- Сервисы, которые интенсивно используются (почти постоянные запросы или запросы со значительными затратами вычислительных ресурсов).
- Сервисы, для которых задано максимальное число выделенных экземпляров.
- Все сервисы, несовместимые с общим пулом экземпляров, как определено выше.
Настройка общего пула экземпляров
Администраторы могут настроить параметры общего пула экземпляров на своем сайте с помощью Server Manager. Доступные параметры – это количество общих экземпляров на машине и размер кэша на общем экземпляре.
Когда новая установка ArcGIS Server 11.3 в первый раз размещает совместимый картографический сервис, использующий общий пул экземпляров, на сайте запускаются общие экземпляры. По умолчанию число общих экземпляров в пуле устанавливается равным соответствующему числу, основанному на количестве физических ядер ЦП на каждой машине.
Если большинство или все сервисы вашего сайта используют общий пул экземпляров, рекомендуется установить число экземпляров сервисов в общем пуле в два раза больше числа физических ядер ЦП на отдельных машинах вашего сайта ArcGIS Server (например, если вы используете 4-ядерные машины, рекомендуется установить размер пула в восемь экземпляров).
Примечание:
Если вы используете многопоточную обработку, виртуальные ЦП или логические ядра (например, если ваш сайт находится в виртуальной или облачной среде), считайте, что каждое логическое ядро равно половине физического ядра.
На сайтах серверов, где множество сервисов используют выделенные экземпляры, если требуется выделить этим сервисам больше системных ресурсов, можно уменьшить размер общего пула экземпляров. Число общих экземпляров в пуле не должно быть меньше числа физических ядер ЦП на вашем компьютере, если только сервисы не используют пул. Если ни один сервис на вашем сайте не использует общие экземпляры, можно установить число экземпляров на машину равным нулю.
Каждый экземпляр в общем пуле кэширует информацию о сервисах, которые получили запросы, поскольку кэширование этой информации повышает производительность последующих запросов для тех же сервисов. Каждый сервис, который кэшируется, занимает небольшой объем памяти.
Параметр размер кэша определяет, сколько сервисов кэшируется каждым экземпляром в общем пуле экземпляров. Если у вас нет большого объема памяти и большого количества сервисов, которые регулярно получают запросы, рекомендуется сохранить значение по умолчанию 50 кэшированных сервисов на экземпляр.
Можно увеличить значение размера кэша, если имеется более 50 сервисов, которые регулярно получают запросы, возникают проблемы с производительностью и имеется доступная память, которую необходимо использовать для этой цели.
Это можно рассматривать как отправную точку. Вам требуется следить за сайтом ArcGIS Server,чтобы убедиться, что вы выделили все возможные ресурсы, и сайт не перегружен трафиком. Оптимальное число экземпляров в пуле и оптимальный размер кэша для экземпляров зависят от объема обслуживаемого трафика, объема и типа обслуживаемых данных и от доступных вычислительных ресурсов.
Выполните следующие действия, чтобы указать количество экземпляров в общем пуле экземпляров и их размер кэша.
- Войдите в ArcGIS Server Manager как администратор. Адрес URL имеет формат https://webadaptor.domain.com/arcgis/manager.
- Перейдите к Сайт > Настройки. Эти параметры доступны на странице Слияние сервисов.
- Нажмите кнопку изменить для Параметров общего экземпляра.
- В диалоговом окне измените значения для Числа общих экземпляров на машине или Размера кэша на общий экземпляр, если требуется.
- Подтвердите ваш выбор нажатием кнопки Применить.
Изменение настройки блокировки схемы
Для некоторых организаций, которые работают в соответствии со строгими соглашениями об уровне обслуживания (SLA), необходимо вносить изменения в схему, сохраняя при этом доступ к картографическому сервису. Чтобы свести к минимуму время простоя картографического сервиса, вы можете отключить блокировку схемы для картографического сервиса, что позволит вам изменять схему набора данных, на который ссылаются, без остановки картографического сервиса.
Прежде чем отключать блокировку схемы, учтите следующее:
- Если блокировка схемы отключена, рекомендуется обновлять схему только тогда, когда сервис простаивает. Если вы обновляете схему, когда сервис находится под нагрузкой, пользователи картографического сервиса могут столкнуться с неожиданным поведением, таким как отсутствие слоев и полей, сбои в запросах и недоступные сервисы.
- Изменение параметра блокировки схемы требует перезапуска сервиса. Кроме того, чтобы изменения были отражены, если вы отключите блокировку схемы для сервиса, вам необходимо либо перезапустить картографический сервис после завершения изменений схемы, которые изменяют определения существующих полей, либо перезаписать картографический сервис, если вы добавили или удалили поле.
- Отключение блокировки схемы будет действовать для всех сервисов, работающих с общими экземплярами.
Выполните следующие шаги, чтобы разрешить редактирование схемы во время работы картографического сервиса:
- Войдите в ArcGIS Server Manager.
- Щелкните Сайт > Настройки > Объединение.
- Нажмите Редактировать для изменения Параметров общего экземпляра.
- Щелкните Параметры
- Снимите отметку Заблокировать схему базы данных.
Примечание:
Блокировка схемы базы данных для опубликованных экземпляров будет отмечена по умолчанию.
- Щелкните Применить.
Настройка параметров по умолчанию экземпляра сервиса
Администраторы могут задать тип экземпляра по умолчанию для совместимых картографических сервисов, опубликованных из ArcGIS Pro. При публикации такого сервиса на сервере используется тип экземпляра по умолчанию. Затем можно изменить тип экземпляра для отдельного сервиса, выполнив действия, описанные в следующем разделе.
Начальная настройка типа экземпляра по умолчанию для вашего сайта ArcGIS Server 11.3 зависит от того, был ли сайт недавно установлен или обновлен:
- Новые сайты ArcGIS Server, созданные в 11.3, назначают все совместимые картографические сервисы общему пулу экземпляров в качестве параметра экземпляра по умолчанию.
- Сайты ArcGIS Server, обновленные с версии 10.7 или 10.7.1, сохраняют текущие настройки экземпляра по умолчанию. Исходной настройкой в этих версиях были выделенные экземпляры с возможностью использования общих экземпляров.
- В сайтах ArcGIS Server, обновленных с версии 10.6.1 или более ранней, исходной настройкой типа экземпляра по умолчанию являются выделенные экземпляры. Пул общих экземпляров будет создан при первой настройке совместимого картографического сервиса для использования общих экземпляров.
Если выбрать общие экземпляры в качестве типа экземпляра по умолчанию для сервисов, этот параметр применяется только к совместимым картографическим сервисам. Сервисы, которые не могут использовать общий пул экземпляров, продолжают работать с выделенным пулом экземпляров.
Изменение параметра типа экземпляра по умолчанию влияет только на сервисы, опубликованные в будущем. Это не изменяет параметры типа экземпляра для существующих сервисов.
Примечание:
Общий пул экземпляров использует небольшой объем памяти, обусловленный числом сервисов, получающих запросы. Для общего пула экземпляров, обрабатывающего запросы для большого числа сервисов, вы увидите увеличение памяти в соответствии с тем, что больше сервисов получают запросы. Это увеличение потребления памяти выравнивается после того, как 50 или более сервисов получили запросы в течение одного периода рециркуляции.
Выполните следующие действия, чтобы указать тип экземпляра по умолчанию для совместимых картографических сервисов.
- Войдите в ArcGIS Server Manager как администратор. Адрес URL имеет формат https://webadaptor.domain.com/arcgis/manager.
- Перейдите к Сайт > Настройки. Эти параметры доступны на странице Слияние сервисов.
- Чтобы изменить тип экземпляра по умолчанию для совместимых картографических сервисов, нажмите кнопку Изменить для Типа экземпляра по умолчанию. Выберите тип экземпляра, который будет использоваться по умолчанию:
- Выберите Выделенные экземпляры, если предполагается, что большинство сервисов будут получать частый трафик, или если на сайте сервера недостаточно сервисов для значительной нагрузки на память компьютера.
- Выберите Общие экземпляры, если вы публикуете много сервисов, которые получают только нечастые запросы, или если вы рассматриваете публикацию дополнительных сервисов, которые будут потреблять значительные ресурсы памяти.
- Подтвердите ваш выбор нажатием кнопки Применить.
Настройка типа экземпляра для сервиса
Администраторы также могут указать тип экземпляра для отдельного сервиса после его публикации, переопределив параметр по умолчанию. Чтобы изменить тип экземпляра для отдельного сервиса, выполните следующие действия. Чтобы использовать общий пул экземпляров, картографический сервис должен быть опубликован из ArcGIS Pro и соответствовать другим требованиям, указанным выше.
- Опубликуйте веб-слой (как слой изображений карты) или веб-карту из ArcGIS Pro на вашем портале ArcGIS Enterprise. Картографический сервис будет создан на вашем интегрированном ArcGIS Server.
Примечание:
Можно включить только определенные возможности картографических сервисов (доступ к объектам, WFS, WMS и KML) для картографических сервисов, которые используют общий пул экземпляров.
- Войдите в ArcGIS Server Manager как администратор. Адрес URL имеет формат https://webadaptor.domain.com/arcgis/manager.
- Найдите картографический сервис.
- Щелкните Редактировать сервис.
- В левой части страницы откройте вкладку Слияние сервисов.
На этой вкладке можно указать диапазон выделенных экземпляров для сервисов (если применимо), задать свойства времени ожидания сервиса и указать, использует ли сервис выделенные экземпляры или общие экземпляры.
- Укажите, должен ли сервис использовать Общий пул экземпляров или собственный Выделенный пул экземпляров.
- Если сервис настроен на использование общего пула экземпляров, некоторые возможности картографического сервиса (на вкладке Возможности) будут недоступны. Если не удается выбрать параметр Общий пул экземпляров, убедитесь, что в картографическом сервисе не включены неподдерживаемые возможности. См. примечание в шаге 1.
- Если служба настроена на использование общего пула экземпляров, раздел Указать число экземпляров (для выделенных пулов экземпляров) становится недоступным.
- Если все готово, щелкните Сохранить и перезапустить. После изменения параметра пула экземпляров в картографическом сервисе необходимо перезапустить сервис.
Пул экземпляров, используемый картографическим сервисом, можно изменить в любое время; это может потребоваться при изменении шаблонов трафика сервиса.