Рекомендуемая спецификация для сервера плиток OSM на EC2 - PullRequest
0 голосов
/ 29 апреля 2018

Я создаю сервер плиток OSM с помощью mod_tile / renderd и osm2pgsql в соответствии с инструкциями здесь: https://switch2osm.org/manually-building-a-tile-server-16-04-2-lts/

С моей текущей спецификацией EC2-сервера t2.xlarge, Ubuntu 16.04, я почти могу работать с картой размера страны, хотя рендеринг плиток на лету все еще медленный, поэтому render_list необходим. Я перепробовал все настройки производительности, которые я смог найти, чтобы ускорить рендеринг, но я действительно считаю, что мне нужен более мощный сервер, особенно потому, что конечной целью является импорт размером с планету. Большинство серверных спецификаций, которые я могу найти для этого, очень устарели.

У кого-нибудь есть рекомендации для экземпляра EC2 (или общих спецификаций облачного сервера) для создания сервера плиток OSM размером с планету в 2018 году?

1 Ответ

0 голосов
/ 03 мая 2018

Я обнаружил, что обновление до сервера m5.2xlarge было достаточным для работы с базой данных планеты - на моем предыдущем 16-гигабайтном сервере мне не хватало оперативной памяти для многих задач БД. Другие важные вопросы, которые необходимо решить, были:

  1. Построить пространственные индексы по всей геометрии таблицы, что не было сделано osm2pgsql в моем случае. У меня уже были частичные индексы при запуске openstreetmap-carto / scripts / indexes.py, но они не подходили для моего стиля и не использовались, поэтому мне нужно было создать эти индексы:

    CREATE INDEX planet_osm_polygon_index ON planet_osm_polygon USING GIST(way)

    CREATE INDEX planet_osm_line_index ON planet_osm_line USING GIST(way)

  2. Вручную установить экстент слоя в XML-файле стиля (я только что использовал экстент карты) - я его опустил, а это значит, что его нужно было вычислять с помощью трудоемкого запроса PostGIS, см .: https://github.com/mapnik/mapnik/wiki/OptimizeRenderingWithPostGIS

  3. Запустить ВАКУУМ и АНАЛИЗ

Теперь я могу запустить render_list на масштабах 0-11, и сервер может генерировать дополнительные уровни масштабирования по требованию без проблем.

...