Распределение ресурсов сервера для кэширования
ArcGIS for Server создает листы кэша с помощью сервиса геообработки под названием Инструменты кэширования (CachingTools). Этот сервис настраивается в папке Система (System folder) при создании сайта ArcGIS for Server. Число экземпляров, разрешенных сервисом CachingTools, определяет, какая мощность будет выделена компьютером для задач кэширования.
Кроме того, всегда необходимо иметь, по крайней мере, один кэшируемый экземпляр, выполняющий картографический сервис, сервис глобуса или изображений. Увеличение числа экземпляров картографического сервиса, сервиса глобуса или изображений не сказывается на скорости создания листов.
В ArcGIS 10.0 и более ранних версиях для увеличения числа процессов операционной системы, работающих с заданием кэширования, необходимо было увеличить число кэшируемых экземпляров сервиса карты или глобуса. Начиная с версии 10.1, вам нужно вместо этого увеличить число экземпляров сервиса геообработки CachingTools.
В любой момент можно изменить в Manager максимальное количество экземпляров сервиса геообработки CachingTools, доступных для заданий кэширования. Минимальное и максимальное значения применяются к каждому отдельному ГИС-серверу. Поэтому, если максимальное значение равно 3, и в кластере существует четыре ГИС-сервера, на которых запущен сервис CachingTools, то может существовать до 12 выполняющихся экземпляров CachingTools.
Это поведение позволяет добавлять и удалять ГИС-серверы на сайте для увеличения или уменьшения количества выделенных для кэширования ресурсов. ГИС-сервер можно добавить даже во время выполнения задания кэширования; он будет обнаружен, и для него будет выделена часть задачи по созданию листов кэш.
Выбор числа экземпляров, работающих с заданием кэширования
При выполнении задания кэширования один экземпляр сервиса CachingTools выступает в качестве проверяющего экземпляра. Этот экземпляр распределяет задания для одного или нескольких рабочих экземпляров. Это рабочие экземпляры, которые фактически изменяют листы. Чтобы гарантировать наличие по меньшей мере одного контроллера и одного рабочего экземпляра, максимальное число экземпляров, разрешенное для CachingTools, всегда должно быть больше или равно 2.
Такие инструменты, как Управление листами кэша картографического сервиса (Manage Map Server Cache Tiles), позволяют выбрать, сколько экземпляров CachingTools будет назначено в качестве рабочих. Если вы не знаете, какое число ввести, возьмите число ядер ЦП серверов ГИС в кластере и прибавьте к нему единицу. Идеальное число экземпляров будет зависеть от сервиса, но для целей тестирования эта оценка вполне подойдет.
Чтобы подсчитать максимальное число экземпляров, которое можно ввести, умножьте число серверов ГИС в кластере CachingTools на максимальное число экземпляров CachingTools, которые могут работать на каждом сервере. Затем вычтите один для проверяющего экземпляра.
Вы можете разделить имеющиеся экземпляры CachingTools между несколькими выполняющимися заданиями. Задание не может использовать максимальное число экземпляров CachingTools, если эти экземпляры используются другими заданиями. Если кэширование использует все экземпляры CachingTools, другие запрошенные задания ставятся в очередь до завершения первого задания.
Сценарии
Предположим, вы хотите создать кэш и у вас есть три ГИС-сервера на сайте с одним кластером. Каждый сервер позволяет запускать не более четырех экземпляров CachingTools. Максимальное число экземпляров, выделяемых на любое кэширование, составляет (3 * 4) – 1 = 11. Управление листами кэша картографического сервиса (Manage Map Server Cache Tiles) или любой другой инструмент кэширования не даст ввести значение выше этого.
Если вы хотите запустить одновременно два кэширования на этом сайте и поддерживать равномерное распределение нагрузки, то число экземпляров, выделенных каждому заданию, составляет (12 – 2)/2 = 5. Другими словами, вы берете общее число экземпляров, доступных на сайте (3 * 4 = 12), вычитаете два проверяющих экземпляра и делите на два задания.
Предоставление гибкости
Вполне возможно, что вы сконфигурировали свой сайт в облачной среде, которая может автоматически добавлять ГИС-серверы по запросу. В этом случае вы не захотите ограничиваться фиксированным максимальным числом экземпляров, которые могут работать над заданием. В данной ситуации можно ввести значение -1, чтобы указать, что ограничений на число экземпляров, которые могут работать над заданием, не существует. Все имеющиеся экземпляры CachingTools будут использоваться для задания, независимо от того, сколько ГИС-серверов добавлено на ваш сайт.
Использование кластеров
Кластеры используются на больших сайтах ArcGIS для распределения нагрузки среди групп ГИС-серверов. Задания кэширования являются гибкими и распределяются по всем доступным ГИС-серверам в кластере, на которых запущен сервис CachingTools.
При первой настройке сайта существует только один кластер по имени default. Если необходимо ограничить задания кэширования подмножеством систем, следует создать новый кластер и назначить сервис CachingTools для его выполнения. Затем потенциально возможно назначить другие сервисы другому кластеру, чтобы они не перегружались процессами задания кэширования.
Можно создать кэш для сервиса, который не выполняется в том же кластере, что и сервис геообработки CachingTools. Например, у вас может быть картографический сервис Spain, работающий на кластере A, и сервис CachingTools, работающий на кластере B. При такой конфигурации вы также можете создать кэш Spain.