Я обслуживаю векторные плитки с помощью TileStache , у меня все настроено так, как я хочу. Мои данные хранятся в Postgres, и я использую провайдер VecTiles для обслуживания плиток GeoJSON .
Я хочу кэшировать все свои тайлы, чтобы они быстрее работали. Я использую tilestache-seed.py для заполнения моего кэша. Я использую кафель на нескольких машинах. Tilestache-seed работал очень хорошо до 13-го уровня масштабирования, но после этого кеширование занимает слишком много времени. Только для Zoom Level 16 у меня есть 5023772 тайлов для кэширования, и я получаю только 100k-200k тайлов в день на каждой машине.
Как я могу ускорить кеширование тайлов ? Есть ли способ точной настройки tilestache-seed.py и сделать его быстрее?
Обновление: я попытался создать пространственные индексы для своих таблиц (для столбца геометрии и столбцов, используемых для фильтрации данных с помощью предложения where), и до сих пор не наблюдал значительного увеличения скорости листов. При такой скорости только Zoom 17 займет у меня месяц, и это время будет увеличиваться только в геометрической прогрессии, когда я перейду к Zoom 21
Обновление 2: я также попытался создать материализованные представления, и никаких заметных изменений в производительности не произошло, поэтому оптимизация базы данных не работает. Я думаю, что мне нужно будет оптимизировать сам файл tilestache-seed.py или разработать новый способ кэширования плиток.
Информация об оборудовании Я запускаю процессы кэширования на 8 разных компьютерах, один из которых - i7 с оперативной памятью 32 ГБ, а другой - i3 с оперативной памятью 4 ГБ, но они оба дают мне почти одинаковую скорость кэширования (примерно 100 000 плиток в день)