19 мая 2015-го

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Открытые 2015

20-22 ноября мы снова проведём конференцию «Открытые ГИС» с обязательной отдельной секцией про OpenStreetMap. Это лучшая — точнее, единственная, — конференция на русском языке про открытые геоданные и ГИС. Подпишитесь на новости на временном сайте конференции: далеко не все будут транслироваться в этот блог.

Прошлая конференция была в 2012 году, и тогда мы заполнили докладами про OSM два дня: 28 выступлений, плюс 9 коротких. К сожалению, видеозаписей не сохранилось, только фотографии и слайды. На этот раз мы подойдём к организации серьёзнее: ничего не пропадёт, оформление будет лучше, залы — удобнее, мастер-классов и докладов — больше. Ваша же задача, как участников OpenStreetMap, — за оставшееся время сделать много крутых штук, чтобы было, о чём рассказать. Уже готовы выступить и хотите застолбить место? Пишите на info@gisconf.ru или мне.

А и Б

Недавно в рассылке talk@ спросили, зачем мы используем для тайлов адреса вида a.tile.osm.org, с тремя префиксами. Если бы они вели на разные серверы, это было бы логично, но они ведут на один. На деле это сделано не для снижения нагрузки, а для браузеров: когда-то у них стояло ограничение на количество одновременных соединений с сайтом (что-то около двух). Это ограничение, вероятно, уже снято, но традиция осталась. Richard Z. предположил, что добавление префиксов к адресам тайлов ломает кэширование, на что Грант Слейтер, наш главный администратор, ответил письмом, которое стоит перевести.

Нет. Альтернативное название сервера (a, b, c) выбирается так, чтобы для каждого тайла всё время подставлять один и тот же сервер (см. исходник Leaflet, в OpenLayers так же).

Давно пора рассказать, как работает наш тайловый CDN:

У нас 16 распределённых серверов оконечного кэширования по всему миру (список, карта, требования). За работоспособностью этих серверов почти в реальном времени следит Pingdom. Мы используем GeoDNS для доменов [a|b|c].tile.openstreetmap.org, который перенаправляет запрос на ближайший или предпочтительный для страны пользователя кэширующий сервер.

Как только Pingdom замечает падение одного из серверов, мы перестраиваем GeoDNS, и посетители пойдут на другой сервер, как только обновится их таблица DNS (в течение 5 минут). Кэширующие серверы прикрывают два сервера рендеринга (orm и yevaud), один из которых — главный. За ними мы тоже следим в Pingdom и когда нужно, перестраиваем GeoDNS.

На кэширующих серверах работает алгоритм равнодоступности (маркерная корзина), который не даст какому-то одному клиенту или подсети ухудшить качество сервиса для остальных.

Оба сервера рендеринга постоянно перегружены, особенно когда обновляется картостиль. Быстрым решением было бы добавить ещё один сервер для рендеринга, но более долговременным — перейти на модель, в которой тайлы (картинки png) производят оконечные кэширующие серверы, а базовые серверы готовят векторные тайлы, которые и рассылают кэширующим узлам. Такие технологии развивают несколько организаций, но полноценного работающего решения с открытым кодом пока нет. Некоторые из нас, операционной команды OSM и команды из викимедии, пристально следят за разработками.

Картостиль OpenStreetMap обновляется нерегулярно, примерно раз в месяц, и после каждого обновления два дня серверы рендеринга работают на пределе. В последней версии стиля целиком переделали отображение болот (теперь оно зависит от типа), добавили значки для памятников, судов, скамеек, урн, 11 видов магазинов, и подписи для деревьев, почты, банкоматов. Грядущая версия пока только легчает: с 6-го масштаба пропадут железные дороги.

Мнения, высказанные на этом сайте, отражают точку зрения лично автора сайта и ничью больше: ни его бывших или настоящих работодателей, ни семьи и знакомых.

11 мая 2015   · · ·
← Ctrl →
· · ·   21 мая 2015