Пути оптимизации GWC (с geoserver)

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Ответить
Аватара пользователя
Crackfox
Активный участник
Сообщения: 131
Зарегистрирован: 02 мар 2016, 20:29
Репутация: 17
Ваше звание: разрядник
Откуда: Москва
Контактная информация:

Пути оптимизации GWC (с geoserver)

Сообщение Crackfox » 21 авг 2019, 15:33

Добрый день. Есть вопросы как оптимизировать кеширование через geowebcache интегрированный в geoserver.

source:
osm-ка на РФ из postgis. из нее собран layerset, srid 3857

Задача:
кешировать layerset с 1 по 13 уровни зума. (что б потом отдать по wmts на клиента)

Проблема:
при запуске таска на кеширование через n тайлов/n gb таска на reseeding/seeding прерывается после потери соединения с геосервером ( он падает). Загрузка CPU местами = 100%

Сервак:
linux, 100 gb ssd, 16 gb ОЗУ.

Что сделано:
под java heap увеличен размер , дошли аж до 11gb - все равно таск на кеширование прерывается.
выделено достаточно места под blob хранилище (30gb)

Вопрос: как еще оптимизировать работу gwc что бы нормально закешировать плитку с 1 по 13 уровни? Как заставить кешировать не столь агрессивно? (пусть 2.5 дня зато не упадет)

vitalus
Новоприбывший
Сообщения: 12
Зарегистрирован: 06 ноя 2018, 01:15
Репутация: 5
Откуда: от верблюда
Контактная информация:

Re: Пути оптимизации GWC (с geoserver)

Сообщение vitalus » 21 авг 2019, 19:18

Добрый день.

Сражу скажу, что точно ничего не посоветую, но я бы провел следующие действия (как опытный Java специалист).

Падает от OOM таки (OutOfMemory error) ? Если версия наипоследнейшая, то, я бы поднял весь исходный код геосервера в Eclipse IDE и хорошенько бы отдебажил с профайлингом памяти на предмет, чего там утекает, чтобы быстрее идентифицировать место в коде.

Там есть достаточно странные опции в XML (gwc-layers/*.xml) указывающие на кеширование в памяти, в память точно ничего не попадает неограниченно ?

Если память просто растет и не скидывается через gc() ( в VirtualVM,например), то рецепт - только ползти в код и разбираться, отбросив сначала все подозрительные опции в настройках (что они не влияют на жор памяти кешами).

Память то помониторьте, а то так и непонятно, это таки OOM или падает JVM от чего-то другого.

Можно сделать внешний скрипт, который просто начнет неторопясь дергать GeoServer/GWC по HTTP - обойти все уровни зума , все тайлы, они и закешируются.

Когда мы делали покрытие тайлами на все уровни зума порядка 40 нужных слоев - написали своего клиента, который дергает программно GeoTools-овский рендерер (он то в Геосервере и используется) и там уже более стабильно все работает и предсказуемо.

Вообще, я обычно просто всегда включаю дебаг и нахожу причину. Исправляю сам. Но это потому , что я этот геосервер 15 лет ковыряю вместе с GeoTools. Но этот рецепт не для пользователей обычных...

Аватара пользователя
Crackfox
Активный участник
Сообщения: 131
Зарегистрирован: 02 мар 2016, 20:29
Репутация: 17
Ваше звание: разрядник
Откуда: Москва
Контактная информация:

Re: Пути оптимизации GWC (с geoserver)

Сообщение Crackfox » 22 авг 2019, 10:50

Спасибо, будем дергать по вашим наводкам. По итогам напишу.

Ответить

Вернуться в «Веб-картография»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 14 гостей