80 заметок с тегом

osm.org

Позднее Ctrl + ↑

Logjam

Вчера нашли новую уязвимость в протоколе TLS (который используется для https-ссылок) и окрестили её Logjam. Около 8% из миллиона популярнейших сайтов ей подвержены, но openstreetmap.org пропатчили ещё воскресным вечером, три дня назад.

И если у вас Java 6, на этой неделе ваш любимый редактор JOSM не мог общаться с OSM API, то есть, редактировать карту можно было только в iD или Mercaartor (который, как мы выяснили, жив). Потому что в Java своя реализация протокола TLS, и поскольку шестая версия не поддерживается уже два года, с пропатченными серверами она взаимодействовать не может.

Проблема, пожалуй, актуальна только для пользователей Mac OS X, которая поставляется с Java 6, и которые могли из-за этого сидеть на JOSM версии 7000, выпущенной в прошлом апреле. Решение очевидное: обновить Java до версии 8, потому что седьмая версия тоже устарела: 14 апреля вышло последнее публичное обновление для неё, дальше — только за денежки. В августе установщик Java 8 для Mac OS X починили, и проблем при обновлении быть не должно.

2015   josm   osm.org

А и Б

Недавно в рассылке 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-го масштаба пропадут железные дороги.

2015   osm.org

Право-лево, лево-право

На openstreetmap.org добавили кнопку прокладки маршрута. Пул-реквест обсуждали почти год, и для следивших за ним (и новостями здесь) в функциональности ничего нового: кнопка со стрелочками, перетаскиваешь два маркера, выбираешь один из шести профилей (спасибо авторам OSRM, GraphHopper и MapQuest, предоставившим сервисы).

Это последний их трёх главных пул-реквестов прошлого года, но за время их обсуждения добавили ещё несколько интересных. Самый важный, видимо, — переработка вкладки истории на базе нового движка OWL. К сожалению, его даже не обсуждают: в последнем комментарии интересуются, зачем это всё, когда есть исторические диффы от Overpass API.

2015   osm.org   роутинг

Пальцем в карту

Второй пул-реквест, ждавший в почти готовом состоянии с марта, только что принят в код сайта osm.org: поиск объектов вокруг заданной точки. Просто включите режим «?» и тыкните куда-нибудь. Объекты отсортированы по типу, за ними идёт второй список — границ поселений и регионов, в которые попала точка. Данные предоставлены сервисами Overpass API и Nominatim.

Остался последний из трёх долгостроев: прокладка маршрута (демо).

2014   osm.org   overpass

Рисуй ещё

Сегодня работу Лукаса Гурдека на Google Summer of Code этого лета, комментирование пакетов правок на сайте, приняли в osm.org. На комментарии можно подписаться, автору приходят уведомления всегда. Помните, что простому «спасибо» будет рад каждый, особенно после нескольких часов работы в josm.

Комментарии к ченджсетам обсуждали ещё в 2011 году, у каждого были свои мысли насчёт того, как это сделать правильно, как провоцировать людей на общение, но не на ругань. Немцы сделали «лайк» для карты, я придумал фейсбук, но этим летом студент под руководством Serge Wroclawski не вникал в историю, а сделал обычные комментарии. Они очень долго шли до главной — люди много придирались к мелочам, и пул-реквест надоел и забылся. Полезные замечания сыпятся и сейчас, но главное — комментарии уже на osm.org, теперь их можно не откладывать придирками, а улучшать.

2014   osm.org
Ранее Ctrl + ↓