Сила ArcGIS Server заключается в его способности предоставлять функциональные возможности ГИС множеству пользователей, которые могут находиться в различных местах. При планировании ArcGIS Server определите, сколько пользователей будут использовать вашу систему, и какое аппаратное обеспечение потребуется для поддержки такого количества пользователей. Другие факторы, например, будет ли сервис использоваться с переменной загрузкой, также должны повлиять на ваше решение. Если вы не можете установить дополнительное оборудование, то вы можете попробовать обеспечить возможность обслуживания большего числа пользователей, изменив конфигурацию сервиса.
Настройка количества компьютеров сайта
Сайт ArcGIS Server - это совокупность одного или нескольких компьютеров, участвующих на равных условиях. При высокой нагрузке уровень использования процессора компьютера ArcGIS Server обычно достигает максимума до того, как это может произойти на веб-сервере; поэтому определение количества компьютеров ArcGIS Server – это важное решение, от которого зависит охват пользователей.
После настройки и ввода системы в эксплуатацию вы можете использовать журналы и статистику сервера, чтобы оценить производительность сервера. Можно также воспользоваться инструментами операционной системы, например, приложением Performance Monitor в Windows, чтобы оценить загруженность сервера при обработке запросов. И, наконец, некоторые инструменты и сервисы сторонних производителей могут отслеживать производительность системы. Примером веб-сервиса, отслеживающего производительность системы в облачной среде, является Amazon Cloud Watch на платформе Amazon EC2.
Если время ожидания выполнения обычных запросов к ArcGIS Server истекает в момент пиковых загрузок, а использование процессора близко к 100 процентов в течение длительного времени, добавление новых компьютеров на уровень ArcGIS Server может повысить производительность системы. Добавьте новые компьютеры вручную или с помощью автоматического процесса с использованием виртуальных машин. Например, можно создать скрипт, добавляющий в систему ArcGIS Server новый компьютер, когда загрузка процессора превышает 70 процентов более 15 минут.
Некоторые процедуры, такие как кэширование карт и геообработка, требуют довольно много ресурсов процессора. Если вы можете прогнозировать время выполнения этих задач, временно создайте дополнительные компьютеры ArcGIS Server и удалите их после завершения задачи. В таких сценариях виртуальные машины и платформы облачных вычислений очень удобны, так как они позволяют быстро получить и освободить дополнительное аппаратное обеспечение.
Об экземплярах сервиса
Запрос к сервису на сайте ArcGIS Server, например, перемещение карты или навигация по адресу, обрабатывается экземпляром опубликованного сервиса, запущенного на компьютере сервера. Экземпляры сервисов работают на базе собственных серверных процессов Esri, называемых процессами ArcSOC. Каждый процесс ArcSOC потребляет для работы некоторое количество памяти компьютера.
Таким образом, общие экземпляры рекомендуется использовать для сервисов, получающих нечастые запросы, особенно когда на сайте сервера размещается много сервисов. С другой стороны, выделенные экземпляры делают сервис всегда доступным для обработки запросов с помощью одного или нескольких серверных процессов и идеально подходят для сервисов, получающих постоянные или особенно ресурсоемкие запросы.
Общий пул экземпляров подходит для совместимых картографических сервисов, таких как:
- Сервисы, которые используются не часто. Это зависит от развертывания, но для большинства развертываний это означает в среднем менее одного запроса на обслуживание в минуту.
- Сервисы, для которых вы уже установили минимальное значение выделенных экземпляров равным нулю.
- Большинство кэшированных картографических сервисов.
Прежние версии:
В версиях до 10.8.1 сервисы с расширениями объектов сервера (SOEs) или перехватчиками серверных объектов (SOIs) не могли использовать пулы общих экземпляров.
ArcGIS Server предоставляет возможность использовать либо общие экземпляры, либо выделенные экземпляры для каждого совместимого картографического сервиса, опубликованного на сайте ArcGIS Server из ArcGIS Pro. Работа с общими экземплярами экономит использование памяти путем объединения нескольких активных серверных процессов в пул для нескольких сервисов. Это позволяет сократить потребление памяти сервисами, которые не обрабатывают запросы активно.
Выбор типа экземпляра
Таким образом, общие экземпляры рекомендуется использовать для сервисов, получающих нечастые запросы, особенно когда на сайте сервера размещается много сервисов. С другой стороны, выделенные экземпляры делают сервис всегда доступным для обработки запросов с помощью одного или нескольких серверных процессов и идеально подходят для сервисов, получающих постоянные или особенно ресурсоемкие запросы.
Администраторы могут выбрать тип экземпляра по умолчанию (определяющий, должен ли совместимый картографический сервис изначально использовать общие или выделенные экземпляры) и в любое время изменить тип экземпляра для отдельного сервиса. Основывайте свои решения на объеме трафика - либо для учета текущего трафика, либо для подготовки к ожидаемым изменениям в трафике.
Не все сервисы могут использовать пул общих экземпляров. Действуют следующие ограничения:
- Только картографический сервис, опубликованный из ArcGIS Pro, может быть настроен для использования общего пула экземпляров. Другие типы сервисов, такие как сервисы геообработки, не поддерживаются.
- Можно включить только определенные возможности картографических сервисов – доступ к объектам, WFS, WMS и KML. Перед продолжением работы отключите все другие возможности.
- Сервисы, опубликованные из ArcMap, не могут использовать общие экземпляры.
- Кэшированные картографические сервисы, опубликованные из ArcGIS Pro на основе вышеизложенных требований, могут использовать общие экземпляры.
Общий пул экземпляров подходит для совместимых картографических сервисов, таких как:
- Сервисы, которые используются не часто. Это зависит от развертывания, но для большинства развертываний это означает в среднем менее одного запроса на обслуживание в минуту.
- Сервисы, для которых вы уже установили минимальное значение выделенных экземпляров равным нулю.
- Большинство кэшированных картографических сервисов.
Настройка пула выделенных экземпляров
Если сервис использует выделенные экземпляры, можно настроить минимальное и максимальное число экземпляров, разрешенных для каждого компьютера. Эти параметры могут помочь сервисам вашего сайта приспособиться к колебаниям объема трафика.
Максимальное число экземпляров представляет самое большое число экземпляров определенного сервиса, которые могут быть запущены на любом компьютере ArcGIS Server. Как администратор, определите число экземпляров, которое позволит обработать все запросы пользователей, обеспечив должную производительность. Это комплексная оценка среднего времени использования сервиса клиентом, числа ожидаемых клиентов, частоты клиентских запросов и интенсивности обработки для каждого запроса.
Количество экземпляров, необходимых в конфигурации сервиса, лучше всего определить путем мониторинга сервера в течение некоторого времени. Если время ожидания клиента велико или истекает время ожидания запросов, может потребоваться изменить количество доступных экземпляров или способ использования этих экземпляров приложением. После определения числа экземпляров, поддерживающих работу клиентов, разделите его на число компьютеров ArcGIS Server в развертывании и задайте полученный результат свойству максимального числа экземпляров. Например, если вам нужно не более десяти экземпляров сервиса, способных одновременно обрабатывать его запросы, и доступно два компьютера ArcGIS Server, установите максимальное число экземпляров равным пяти.
Свойство минимальное число экземпляров представляет собой количество выделенных экземпляров, которые уже созданы и доступны для использования в сервисе на каждом компьютере ArcGIS Server. Если вы сомневаетесь, что много пользователей будут одновременно работать с сервисом, уменьшите минимальное число экземпляров.
При желании можно задать нулевое значение. Однако это приводит к небольшой задержке производительности, когда сервис без активных экземпляров получает следующий запрос. Это время задержки называется "холодным стартом".
Следует учесть продолжительность работы пользователей с вашими сервисами. Некоторые запросы к серверу требуют больше ресурсов, чем другие. Большое количество простых запросов сервисов может не так загрузить сервер, как меньшее число ресурсоемких запросов. У каждого сервиса есть свойство максимального времени ожидания и свойство максимального времени использования. Если время ожидания на выполнение запросов пользователей к сервисам последовательно превышают заданное, следует увеличить максимальное число доступных экземпляров сервиса.
Используйте журналы и статистику сервера, чтобы определить, вызывают ли запросы сбои и не превышают ли сервисы максимальное время использования. Используйте Server Manager для корректировки числа доступных экземпляров сервиса, а также максимального времени ожидания и максимального времени использования сервиса.