Skip to main content

Дополнительные свойства сервиса

Для некоторых рабочих процессов администраторам может потребоваться корректировать свойства опубликованных сервисов геообработки. Эти корректировки применимы как к автономным, так и к федеративным серверам. Примеры:

  • Пространственный анализ с использованием больших растровых наборов данных, требующих значительного объема памяти.

  • Загрузка больших входных файлов для веб-инструмента или сервиса геообработки.

  • Оптимизация производительности.

  • Требования к ведению пользовательского журнала.

  • Получение дополнительных диагностических результатов при отказе сервиса геообработки.

  • Контроль видимости отдельных задач внутри сервиса геообработки.

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

Большинство описанных ниже свойств можно настроить только с помощью API Administrator REST. После того как вы или ваш администратор получите доступ к Administrator REST API, необходимо отредактировать свойства сервиса для каждого сервиса геообработки, который необходимо изменить.

Изменение объема динамической памяти

Объем динамической памяти управляет максимальным размером файла, который может быть предоставлен клиентом при обращении к веб-инструменту или сервису геообработки от ArcGIS Pro, а также максимальной памяти, которую может использовать сервис геообработки. Объем динамической памяти может быть определен на уровне сервера для всех сервисов геообработки или для одного сервиса.

Изменение объема динамической памяти для отдельного сервиса обеспечивает лучшую производительность, чем изменение объема динамической памяти для всех сервисов на всём сервере. Для каждого сервиса стандартный объем динамической памяти составляет 64 МБ. Если у вас есть входной файл или класс пространственных объектов, больший объема, заданного по умолчанию, измените объем динамической памяти службы следующим образом:

  1. Перейдите в конечную точку Редактировать свойства сервиса для сервиса геообработки, который необходимо изменить. Обычно это будет https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit.

  2. Изучите существующий frameworkProperties, как правило, расположенный в нижней части списка свойств сервиса.

    Пример свойств сервиса в формате JSON

  3. Если javaHeapSize не указано в frameworkProperties, добавьте пример {"javaHeapSize":"128"}. Если javaHeapSize включено, соответственно увеличьте значение.

  4. Щелкните кнопку Сохранить изменения, чтобы сохранить и завершить редактирование.

Для изменения объема динамической памяти для всех сервисов геообработки на всём сервере, выполните следующие шаги. По умолчанию максимальный объем динамической памяти компонента серверного объекта (SOC) - 64 МБ. Увеличите его до необходимого значения.

  1. Получите доступ к конечной точке машины редактирования. Обычно она находится в https://organization.example.com/serverwebadaptor/admin/machines/machinename/edit

  2. Увеличьте значение параметра Максимальный объем динамической памяти SOC (в МБ).

  3. Щелкните Сохранить изменения, чтобы завершить редактирование.

Установка размера файла загрузки

Параметр размера загружаемого файла контролирует размер файла, который могут загрузить клиенты, подключающиеся к сервису через конечную точку REST. Как правило, эти клиенты являются веб-клиентами, использующими сервис через пользовательское веб-приложение. По умолчанию установлено ограничение 2 ГБ. Используйте эту настройку для предоставления значения по умолчанию в целях предотвращения загрузок больших файлов через сервис.

Чтобы задать размер загрузки, откройте конечную точку Редактировать свойства сервиса для сервиса геообработки, который необходимо изменить. Обычно это будет https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit. Обновите значение параметра maxUploadFileSize. Пример записи, ограничивающей максимальный размер загружаемого файла до 100 МБ, будет выглядеть так - "maxUploadFileSize": 100,.

Примечание:

При публикации веб-инструмента убедитесь, что поставлена отметка Загрузки на панели Конфигурация Опубликовать как веб-инструмент. Либо включите эту настройку в существующем сервисе с помощью ArcGIS Server Manager на странице настроек сервиса Возможности.

Установка типа файлов загрузки

Только определенные файлы могут быть загружены в веб-инструмент. Файлы с какими расширениями могут быть загружены с помощью сервиса определяется на уровне сервиса.

Чтобы задать тип загрузки, откройте конечную точку Редактировать свойства сервиса для сервиса геообработки, который необходимо изменить. Обычно это будет https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit. Обновите свойство allowedUploadFileTypes, добавив расширения файлов, которые хотите разрешить. Пример свойства, позволяющего .kml и .gpx файлы, — это "allowedUploadFileTypes": ".kml,.gpx".

Примечание:

При публикации веб-инструмента убедитесь, что поставлена отметка Загрузки на панели Конфигурация Опубликовать как веб-инструмент. Либо включите эту настройку в существующем сервисе с помощью ArcGIS Server Manager на странице настроек сервиса Возможности.

Изменение максимального количества доменов

Настройка maxDomainCodeCount управляет количеством доменов, которое будет возвращено с ответом сервиса. Описание домена сопоставлено с кодом, возвращаемым с выходными объектами ответа. По умолчанию эта настройка установлена на 1000. Если выходные объекты содержат более 1000 участвующих доменов, информация о доменах возвращена не будет. Возвращаемая информация о доменах может превысить размер ответа. Если для домены не нужны, задайте это значение равным нулю или меньшим, чем количество доменов в сервисе.

Чтобы изменить максимальное количество доменов, откройте конечную точку Редактировать свойства сервиса для сервиса геообработки, который необходимо изменить. Обычно это будет https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit. и обновляет свойство maxDomainCodeCount, устанавливая максимальный лимит. Пример ограничения максимального количества доменов до 50 будет "maxDomainCodeCount": 50,.

Локальная папка temp

Локальная временная папка является каталогом, в который ArcGIS Server записывает промежуточные выходные данные, наряду с другими компьютерами, участвует в кластере, или если ссылки на каталоги оформлены в виде путей UNC. Это может повысить производительность сервиса, потому что нет необходимости записывать промежуточные данные во временную базу геоданных по пути UNC или временную папку. После завершения результаты будут скопированы из локальной временной папки в директорию с заданиями, которая может быть путем UNC. Типичная локальная временная папка для ArcGIS Server в Windows может быть c:/Users/arcgisuser/AppData/Local/Temp/system/servicename_gpserver/jobID/scratch. В настоящее время местоположение временной папки нельзя изменить после развертывания сервера.

Повторное использование каталога заданий для синхронных сервисов

Если ваш веб-инструмент основан на синхронном сервисе геообработки, вы можете повторно использовать рабочую директорию для повышения производительности, применив "reusejobdir": "true". Как правило, каждый раз, когда вы запускаете синхронный сервис геообработки, в папке arcgisjobs на вашем сервере создается рабочая директория. По завершении ArcGIS Server удалит эту рабочую директорию. Если установить для свойства reusejobdir значение true, то рабочая директория останется даже после завершения выполнения задания. Это может сэкономить время на создании временной базы геоданных и временной папки для следующего выполнения, что обеспечивает некоторые преимущества в части производительности. Также, когда вы вернете этому свойству значение "false" или удалите это свойство, обратитесь к своему администратору, чтобы удалить любую существующую папку заданий для этого сервиса.

Получите доступ к конечной точке Редактировать свойства сервиса для сервиса геообработки, который необходимо изменить. Обычно это будет https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit.

Далее приведен упрощенный JSON, показывающий параметр reusejobdir. Другие свойства были скрыты, чтобы выделить изменения, относящиеся к этому свойству.

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "reusejobdir": true,
     "executionType": "Synchronous"
 },
 "portalProperties": {},
 "extensions": []
}

Запись сообщений в журнал ArcGIS Server

Если веб-инструмент опубликован в ArcGIS Server версии 11.3 или более поздней, вы можете включить копию сообщений веб-инструмента в журнал ArcGIS Server. Уровень сообщений журнала ArcGIS Server будет соответствовать уровню сообщений веб-инструмента. Для сообщения веб-инструмента существует три уровня: ошибка, предупреждение и информация - которые соответствуют критичным, предупреждающим и информационным сообщениям в ArcGIS Server. Ручная настройка сообщений веб-инструмента с помощью сообщений инструмента-скрипта. Многие инструменты геообработки также содержат предустановленные сообщения. Чтобы убедиться в том, что сообщения правильно регистрируются в ArcGIS Server, укажите соответствующие настройки журнала сервера.

Перейдите в конечную точку Редактировать свойства сервиса для сервиса геообработки, который необходимо изменить. Обычно это будет https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit.

Упрощенный JSON, показывающий параметр logGPMessages. Другие свойства были скрыты, чтобы выделить изменения, относящиеся к этому свойству.

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "logGPMessages": true,
     "executionType": "Asynchronous"
 },
 "portalProperties": {},
 "extensions": []
}

Возвращаемые результаты в особенных случаях

При сбое или отмене работы асинхронного сервиса геообработки или веб-инструмента, основанного на асинхронном сервисе геообработки, результаты недоступны. Если такой веб-инструмент или сервис геообработки опубликованы в ArcGIS Server версии 11.5 или более поздней, вы все равно можете включить ArcGIS Server для возврата результатов, если вы обращаетесь к ним через results или result ресурсы в ArcGIS REST API. Эта функция недоступна при использовании синхронного сервиса геообработки или веб-инструмента, основанного на синхронном сервисе геообработки. Вы также не можете получить доступ к результатам невыполненных или отмененных заданий в ArcGIS Pro.

Чтобы задать свойство saveRESTResultsOnFailOrCancel, откройте конечную точку Редактировать свойства сервиса для сервиса геообработки, который необходимо изменить. Обычно это будет https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit.

Упрощенный JSON, показывающий параметр saveRESTResultsOnFailOrCancel. Другие свойства были скрыты, чтобы выделить изменения, относящиеся к этому свойству.

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "saveRESTResultsOnFailOrCancel": true,
     "executionType": "Asynchronous"
 },
 "portalProperties": {},
 "extensions": []
}

Блокировка определенных инструментов

При публикации веб-инструментов или сервисов геообработки, может понадобиться отключение или блокировка доступа к определенным задачам. Начиная с ArcGIS Server версии 11.5, добавьте свойство blockedTools или allowedTools к свойствам сервиса, чтобы заблокировать определенные инструменты.

Используйте свойство blockedTools, чтобы сделать определенные инструменты недоступными. Используйте свойство allowedTools, чтобы сделать доступными только определенные инструменты; все остальные инструменты будут недоступны. Для удобства используйте любое из свойств. Чтобы определить задачу, используйте либо имя, либо отображаемое имя задачи. Если имя задачи совпадает с отображаемым именем другой задачи, обе задачи будут распознаны и заблокированы или разрешены одновременно.

Получите доступ к конечной точке Редактировать свойства сервиса для сервиса геообработки, который необходимо изменить. Обычно это будет https://organization.example.com/serverwebadaptor/admin/services/servicename.GPServer/edit.

Упрощенный JSON, показывающий параметр blockedTools с несколькими именами задач для блокировки. При указании нескольких имен они разделяются точками с запятой.

{
 "serviceName": "sample",
 "type": "GPServer",
 "other_properties": "other_values",
 "properties": {
     "other_properties": "other_values",
     "blockedTools": "extractData;bufferInputs",
     "executionType": "Synchronous"
 },
 "portalProperties": {},
 "extensions": []
}