Задача Настроить OSRM сервер

Настроить OSRM сервер

OSRM (Open Source Routing Machine) - крайне крутая штука! Позволяет заранее подготовить все возможные маршруты на основании предоставленной базы OSM (Open Street Map) и потом очень быстро выстраивать маршруты на карте, при чем можно и сразу несколько точек. Для моего туристического проекта вещь просто незаменимая.

Проект в гитхабе: https://github.com/Project-OSRM/osrm-backend

Демо-сайт: https://map.project-osrm.org/

Но важный момент: чтобы подготовить эти маршруты, надо довольно много мощностей. Я в прошлом году как раз готовил маршруты для сразу 4 стран (Вьетнам, Тайланд, Лаос, Камбоджа). Сначала я запусти это на своем ноутбуке рабочем (в смысле, который использую для работы, а не предоставленный с работы) и он так-то совсем не слабый (core i7 14 поколения, 64 оперативы), и вот что с ним было:

То есть ему ресурсов не хватало и процесс крашился.

ОК, я как раз недавно купил себе более мощный комп для экспериментов с ИИ, там ресурсов сильно больше - core i9, 128 Gb оперативки. И не то, чтобы я прям был сильно удивлен, но и он с этим не справился :-) Процесс сожрал все 128 гигов оперативы и 8 гигов свопа.

ОК, иду ва-банк :-) Делаю своп 1:1 к оперативке, то есть 128 оперативки и 128 свопа. Без лишних слов: он справился :-) Но в пике было потребление 190+ гигов памяти :-)

Но зато он все-таки отработал и нагенерировал мне все маршруты. Правда конечная база по этим 4 странам весит 100+ гигов. А вот только Вьетнам всего 5 гигов.

du -hs *
101G	asia
5.3G	vietnam

Кстати, ресурсов при работе он тоже не мало кушает. Контейнер только с маршрутами Вьетнама схедает на старте порядка 3 гигов оперативки.