Предполагаемый размер кэша веб-слоя может потребовать значительное время на генерацию листов и место для хранения.
Решение
- Ничего не делайте.
- Если вы не хотите публиковать большой кэшированный веб-слой, можно использовать несколько вариантов кэширования, чтобы уменьшить размер кэша. Можно снизить уровень детальности, использовать класс пространственных объектов для определения области интереса и строить листы только в ней, изменить формат листов, использовать кэширование по требованию для редко просматриваемых областей или сократить количество диапазонов масштаба для кэша. Эти варианты можно использовать как по отдельности, так и в сочетании друг с другом.
Более подробно
Кэши листов веб-слоев могут отнимать большой объем ресурсов сервера на процедуры создания и сохранения.Существуют различные способы уменьшения общего размера кэша.
- При выборе уровней масштаба для кэша следует помнить о том, что чем больше приближается карта, тем больше листов требуется для покрытия всей области карты и тем дольше будет создаваться кэш. При каждом делении знаменателя масштаба на два требуется в четыре раза больше листов для покрытия площади карты. Например, площадь карты при масштабе 1:500 содержит в четыре раза больше листов, чем карта в масштабе 1:1 000, а площадь карты в масштабе 1:250 содержит в 16 раз больше листов, чем карта в масштабе 1:1000.
- Кэширование границами класса объектов позволяет создавать листы только в тех местах, где они нужны, избегая пустых и не представляющих интереса областей. Например, если вы кэшируете страну, вы можете использовать класс объектов крупных городских областей. Сделав это, вы поручаете серверу предварительно создать только листы, которые покрывают эти городские области. Оставшиеся части областей могут быть кэшированы по первому требованию, когда поступает запрос от клиентов. Это позволит сэкономить время и дисковое пространство, которые были бы потрачены на создание ненужных листов в сельских районах. В изображении ниже показана теоретическая сетка листов, которые были бы созданы, если бы класс пространственных объектов содержал лишь штат Калифорния. Ненужные листы в океане и в соседних регионах не создаются. Эти ненужные листы были бы включены в случае использования применяемого по умолчанию прямоугольного экстента.
- Кэширование по запросу представляет собой метод, при котором листы не строятся заранее, а только когда их запрашивает клиент. Пассивное кэширование позволяет экономить пространство и время на построение кэша, но человек, первым обратившийся к области карты, будет вынужден ждать, пока рисуются листы. Наиболее часто просматриваемые области могут иметь заранее созданные листы, а для областей, которые просматриваются реже, листы создаются по запросу.
При грамотном использовании кэширование по запросу может сэкономить много времени и места на диске. На многих картах, особенно в крупных масштабах, отображаются пустые, непригодные для использования и вообще ненужные пользователю области. Кэширование по запросу позволяет исключить ненужные листы, которые не будут прорисовываться и сохраняться, но у пользователя будет возможность просмотреть эти области при первой необходимости.
Внимание:
Несмотря на то что кэширование по запросу безусловно является полезной функцией, ее использование может негативно повлиять на производительность при ненадлежащем или чрезмерном использовании. При чрезмерном использовании кэширование по запросу может занять все свободное место на диске. Администратор должен постоянно проверять осталось ли на диске место.