Всем привет! подскажите толковые статьи с лучшими практиками по управлению ресурсами

табло)
ну или поделитесь опытом, как грамотно ограничивать разработчиков в части экстрактов? (кроме разъяснительных бесед😊)
зачастую возникает большая очередь из джобов и нагрузка на диск..

14 ответов

41 просмотр

Привет! Большую очередь мы решали увеличением количества backgrounder процессов (в этом случае увеличивается кол-во одновременно выполняемых экстрактов), но это только в случае, если ресурсы CPU позволяют. При этом деградации по скорости выполнения экстракта не наблюдали. По диску — ничего не могу сказать, кроме того, что возможно лучше поставить SSD, если сейчас HDD. Еще можно вынести экстракты на отдельную ноду, если у вас multi-node server

Maksim-Akolzin Автор вопроса

спасибо) у какие-то строгие ограничения на время выполнения джоба не приходилось ставить? на сколько вообще это нормальная практика интересно)

Maksim Akolzin
спасибо) у какие-то строгие ограничения на время ...

сильно зависит от архитектуры. Я видел экстракты которые по 3 часа делали.

Maksim-Akolzin Автор вопроса
Артем Прытков
сильно зависит от архитектуры. Я видел экстракты к...

я скоро тоже такие буду видеть походу) понятно, что можно бесконечно расширяться и каждому по серверу табло выдать) просто интересно, есть ли какие-то рабочие инструменты управления, чтобы один разработчик на себя все одеяло не перетягивал

Maksim-Akolzin Автор вопроса

может есть какая-то архитектура подходящая для больших объемов?

Maksim Akolzin
я скоро тоже такие буду видеть походу) понятно, ч...

Очереди и лимиты на сайты. Или отдельный процесс выкладки специально обученным человеком.

Maksim Akolzin
может есть какая-то архитектура подходящая для бол...

вам уже выше сказали - добавляете ноды с бэкграудндерами

Артем Прытков
вам уже выше сказали - добавляете ноды с бэкграудн...

Нужно отслеживать, что 1. Экстракт создан оптимально 2. Экстракт используется. Иначе можно бесконечно расширять ресурсы без явной необходимости. Наш недавний кейс - разработчик создал экстракт, который обновляется около 40 минут, поставил его на полное ежечасное обновление. Нагрузка на сервер высокая, при этом практически постоянная. Как выяснилось, можно было сделать инкрементальное обновление, которое занимает 1 минуту.

Maksim Akolzin
спасибо) у какие-то строгие ограничения на время ...

есть дефолтное ограничение в 7200 секунд на выполнение экстракта, мы его увеличивали, потому что джобы по таймауту падали

Maksim Akolzin
спасибо) у какие-то строгие ограничения на время ...

мы делали так - мониторинг экстрактов и job-ов по времени и оптимизация слотов (сессия внутри команды и ревью расписаний). Сделали отчет который "рекомендовал" слот на основе 5 последних ранов - часовые джобы и в часы пик - проходили ревью по шкале "критичности" для бизнеса - отключение того, что не используется больше 90 дней (в дашборды не смотрят если встроенные и подключений к источнику нет если опубликованный) - подкручивали такую настройку set backgrounder.sort_jobs_by_run_time_history_observable_hours но ее увы уже нет - снимали 7200 и делали 1800 - все были довольны) было правило - генерить экракт в течение 30 мин - на время динамически перконфигурировали процессы, чтобы ночью все успели

Maksim-Akolzin Автор вопроса

круто! спасибо)

Maksim Akolzin
круто! спасибо)

ну а вообще, мне каж, это классическая производственная задача как максимизировать выпуск деталей на конвеерах :)

Serega Vitvitskiy
у меня есть экстракт на часов 6

ну-ну, этот экстракт собирается строго в ночь на воскресенье

Похожие вопросы

Обсуждают сегодня

if (user?.choseType === 'oneDay') { await ctx.reply( 'Добро пожаловать в команду «Магнита»! Правда, на один день ☺️ ', ); await ctx.s...
Kokni
1
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Это фейк @cruppto_newbot?
Antskup
13
всем салют сегодня утро заметил что бот не может отправлять фотки по url. ручками в браузере ссылка норм открывает фотки. падает ошибка 'Bad Request: failed to send message ...
Vasya Ivanov
9
ребят, привет. за какое время бот полученную заявку на вступление в группу может принять \отклонить? Помню речь была про 5 минут, сейчас как?
Роман Ромашин :)
10
Доброго времени суток. Правильно ли я понимаю, что с введением новой платежной единицы stars, я просто могу оставить текущую платёжку от Юкассы, которая выполняется на сайте с...
Prokhor Chulkov
7
вопрос: кто как решает вопрос с динамической подгрузкой скриптов для отдельных страниц с включенным turbo router?
Sergei Toroptsev
25
Добрый день! Не подскажете как к модели Категории Шопоголика добавить отношение Тейлора. Пробовал по документации, но не получается. Мб уже кто-то делал?
Николай Афанасенко
6
@veranikaEU получилось? Можно увидеть рабочий код?
Alex Kom
8
Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
Карта сайта