Создание кэша карт ArcGIS или изображений в Amazon Elastic Compute Cloud (EC2) имеет несколько отличий от кэширования вне облака:
- В вашем распоряжении имеется несколько разных размеров экземпляра с ценами.
- Вы можете добавить несколько томов в экземпляр, где вы можете разместить кэш.
В данном разделе вышеперечисленные факторы описываются более подробно.
Выбор размера экземпляра и цены
Amazon EC2 предлагает разные размеры и спецификации. Каждая имеет свою собственную цену за час использования. Более крупные экземпляры с большим объемом памяти могут создавать листы очень быстро. Более мелкие экземпляры создают листы медленнее, но они и стоят дешевле.
Свой кэш вы можете создать на прикрепленном томе блока Amazon Elastic Block Store (EBS), используя при этом экземпляр с большим объемом памяти. Когда кэширование будет завершено, вы можете открепить том EBS и прикрепить его к вашему обычному экземпляру (который может быть меньше и не такой дорогой). После этого экземпляр с большим объемом памяти, использованный вами для кэширования, может быть уничтожен. Таким образом, вы можете использовать память облака для кэширования, не прибегая к относительно дорогим экземплярам дольше, чем требуется.
Вам потребуется сделать выбор между экономией и быстротой. Использование маломощных и недорогих экземпляров не всегда будет самым экономичным выбором, поскольку общая стоимость кэша зависит от количества часов, затраченных на создание листов. С другой стороны, самые мощные экземпляры тоже могут увеличивать общую стоимость кэша: даже несмотря на меньшее количество затраченных на кэширование часов, вы заплатите за каждый час более высокую цену.
С помощью небольшого тестового кэша (возможно, размером для среднего по величине города), а также Amazon Machine Image (AMI) или шаблона сайта, вы можете выполнить свои относительно недорогие тесты с различного типа экземплярами, чтобы выяснить, который из них является наиболее экономичным для вашего кэша.
Мощные типы экземпляров EC2 хорошо приспособлены к запрограммированным обновлениям кэша, поскольку технология обновления, как правило, зависит от времени.
Выбор числа экземпляров используемых картографических сервисов при кэшировании
Каждый экземпляр EC2 имеет определенное число виртуальных процессорных ядер. Это количество можно увидеть при выборе типа экземпляра в консоли Amazon Web Services Management. Зная количество ядер, вам будет легче определить количество экземпляров сервиса геообработки инструментов кэширования, которое необходимо отвести под кэширование. Использование слишком большого числа экземпляров сервиса приведет к перегрузке центрального процессора, в то время как если использовать слишком мало экземпляров сервиса, то процессор будет использоваться нерационально.
Хотя оптимальное число находится методом проб и ошибок, в качестве максимума для начала можно взять n + 1 экземпляров сервиса CachingTools, где n – число виртуальных ядер в одном экземпляре EC2 на вашем сайте.
Автомасштабирование
При построении большого кэша, вы можете захотеть установить триггеры автоматического масштабирования, что сразу приведет к увеличению числа экземпляров EC2, работающих с кэшем, а также увеличению использования памяти. Однако автомасштабирование лучше подходит для обработки неожиданных резких скачков трафика. При создании кэшей вы заранее знаете, что вам понадобится много вычислительной мощности; поэтому, имеет смысл запустить все необходимые экземпляры до построения кэша, вместо того, чтобы ждать, пока они запустятся последовательно через триггеры автомасштабирования.
Где разместить кэш
В разделе Стратегии переноса данных в веб-сервисы Amazon говорилось о том, что существует несколько типов местоположений, где могут быть размещены ваши данные. Когда вы будете создавать кэш, вы запишите его на томе EBS, прикрепленном к вашему экземпляру EC2, или вы можете записать его в блок S3.
Если кэш создается на томе EBS, убедитесь, что его размер достаточен. Если же том невелик, то вы можете заменить его на том большего размера, создав его из снимка существующего тома с данными, и зарегистрировать в нем директорию кэша сервера. Не следует создавать кэш на диске C или корневой директории экземпляра EC2. Если этот экземпляр когда-нибудь будет уничтожен, то такой кэш будет утрачен.
Если вы хотите хранить кэш карт и изображений в блоке S3, выполните следующие шаги:
- Создайте блок хранения Amazon S3 в том же регионе, что и сайт ArcGIS Server на AWS.
- Создайте папку в блоке S3. Назовите папку arcgiscache.
- Войдите в ArcGIS Server Manager сайта на AWS, где вы хотите разместить кэшированные сервисы карт и изображений и зарегистрируйте блок S3 как облачное хранилище и директорию кэша.
В 10.6, убедитесь, что используете для учетной записи Ключ доступа при регистрации облачного хранилища, поскольку роль IAM не поддерживается. В 10.6.1 можно использовать оба.
Не включайте имя папки, arcgiscache, в поля S3 Bucket Name или Папка при регистрации облачного хранилища.
Убедитесь, что у учетной записи ArcGIS Server есть права на чтение и запись в блоке с помощью указанной учетной записи Access Key или роли IAM .
После регистрации облачного хранилища, можно опубликовать кэшированные сервисы карт и изображений, используя блок S3. Также в S3 можно создать схему кэширования, обновить листы кэша и удалить листы кэша.
Рекомендации по кэшированию в S3
В 10.6.1 не поддерживаются следующие опции, если кэш хранится в S3:
- Инструмент геообработки Управление листами кэша сервера карт
- Инструмент геообработки Конвертировать формат хранения кэша карты
- Инструмент геообработки Обновить формат хранения кэша картографического сервера
- Включение кэширования карт по запросу
В 10.6, помимо перечисленного выше, для кэша в S3 не поддерживается следующее:
- Инструмент геообработки Экспортировать кэш картографического сервиса
- Инструмент геообработки Импортировать кэш картографического сервиса
- Экспорт тайлов из блока S3.