Страница 1 из 1

Проблемы с рестартом сервера

Добавлено: Пт июл 21, 2017 10:43 am
AlexeySmolenchuk
Рестарт afserver не всегда проходит гладко. Иногда он сильно затягивается, особенно если на момент отключения (или сбоя) в системе было зарегистрировано большое количество джобов, либо присутствовали джобы с гигантским количеством тасков. А иногда Афанасий вовсе не может прочитать информацию о джобах, и их приходится переотправлять заново, вручную сверяясь с количеством уже отсчитанного материала.

Я понимаю что хранение в файлах было сделано в пользу отказа от СУБД. Приведу немного статистики:
168129 directories, 189760 files это на текущие 952 джоба. (Действительно ли каждому текстовчку нужна своя директория? не является ли это узким горлышком?)
Просто листинг этой папки (/var/tmp/afanasy/jobs) происходил дольше 20 минут. (сопоставимо с продолжительностью поднятия сервера). Забавно то, что файл с листингом весит больше, чем сама папка.

У меня есть пара идей по этому поводу(может быть и не состоятельных).
Стартовать сервер пустым и добавлять старые таски в фоне - это по крайней мере избавит от простоя фермы.
Сделать джобы переносимыми объектами, чтобы их можно было заархивировать, разархивировать, пренести на другой сервер в текущем виде, с текущим прогрессом и статусом. при таком подходе можно было бы все завершённые задачи автоматически архивировать, заменять содержимое /var/tmp/afanasy/jobs/0/6.afanasy_testing.afanasy1-4 на один tar, и афанасий подгружал бы его в самую последнюю очередь, или не подгружал бы вовсе до тех пор, пока юзер не захочет его разархиваировать ( для пересчёта или просмотра логов ).

Ещё я заметил, что потребление оперативной памяти афсервером до падения меньше, чем после восстановления, предполагаю, что после операции чтения джобов не высвобождается часть памяти.

Re: Проблемы с рестартом сервера

Добавлено: Вс июл 23, 2017 4:07 pm
Timur
Чтение задач в фоновом режиме - думаю что хорошоя идея. Надо будет реализовать.
Архивирование задач - тут по сложнее, надо много чего продумать, но тоже полезно будет.
Утечку оперативки - тут надо проверять на месте каким-нить valgrind-ом.

А вообще, у вас виснет сервер? Как часто? Какая платформа?
У нас тоже иногда до 1000 задач доходит, правдо редко такое.
Но проблем с (пере-)загрузкой еще не испытывали, так как практически не перегружаем его.

Re: Проблемы с рестартом сервера

Добавлено: Вс июл 23, 2017 9:26 pm
AlexeySmolenchuk
Он скорее не виснет, а именно падает.
Бывает раз в месяц, а бывает по три раза подряд за один день. Профилактических перезагрузок тоже не делаем.

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

Сервак на дебиане 8

Re: Проблемы с рестартом сервера

Добавлено: Вс дек 03, 2017 12:26 pm
paulwinex
У меня стабильно падал сервер если я создаю задачу через PythonAPI по всем правилам но не указываю кадры. То есть setNumeric совсем не вызывается а соответствующие символы в команду добавлены. Не страшно только если сервер тестовый.

Re: Проблемы с рестартом сервера

Добавлено: Вс дек 03, 2017 8:26 pm
Timur
Ок. Я посмотрю. Может он думет что блок нумерик, а кол-во тасков там миллиард (случайное, не инициированное значение), и не хватает памяти. Или что-то типа того.