169 похожих чатов

Всем привет, сталкивался кто с тем что после добавления большого

количества джоб в chain, некоторые из них все равно валяются по тайм-ауту из-за того что долго находятся в состояние ожидания на исполнение?

16 ответов

27 просмотров
Roman-Kolosov Автор вопроса

Эх вот на это бы кто ответил)

Да. В джобах надо тайм-аут убирать т.к. он считается с момента создания джобы.

Roman-Kolosov Автор вопроса
Andrey Helldar
Да. В джобах надо тайм-аут убирать т.к. он считает...

Но это же в тот же момент время исполнения? Разве чейн не сделан для того что бы они исполнялись последовательно?

Roman Kolosov
Но это же в тот же момент время исполнения? Разве ...

На счёт последовательности не знаю, не работал с чейном, но тайм-аут начинает действовать с момента dispatch job

Roman-Kolosov Автор вопроса
Andrey Helldar
На счёт последовательности не знаю, не работал с ч...

Ну вот в том и прикол, есть например пакет ларавел ексель, он умеет обрабатывать документ в чейне, и там нету такой проблемы Обработка чанков идет друг за другом

Roman Kolosov
Ну вот в том и прикол, есть например пакет ларавел...

Тут уже не подскажу. С чейнами джоб ни разу не приходилось сталкиваться. Не было необходимости.

Roman-Kolosov Автор вопроса
Andrey Helldar
Тут уже не подскажу. С чейнами джоб ни разу не при...

Я после того как столкнулся, понял что не правильно понимал механизм работы джоб в Ларе, мне нужно в 5 процессов распараллелить обработку 400к строк и что бы это все исполнялось друг за другом, не так уж и просто как оказалось…

Roman Kolosov
Я после того как столкнулся, понял что не правильн...

Если я правильно понимаю, чейн не последовательно выполняет джобы, а параллельно, при этом он ожидает когда они все закончат обработку. Если запустить 5 джоб на очереди, обработкой которой занимаются, например, 10 воркеров, то эти 5 джоб выполнятся параллельно на пяти воркерах. Если нужно именно последовательно, то я бы сделал костыль: ProcessBatchJob::dispatch() - общая джоба для процессов, внутри которой: ProcessJob::dispatchSync(1) ProcessJob::dispatchSync(2) ...

Roman Kolosov
Я после того как столкнулся, понял что не правильн...

Главный вопрос: зачем распараллеливать, если выполнить нужно друг за другом? Это противоречит параллельности джоб

Andrey Helldar
Если я правильно понимаю, чейн не последовательно ...

это ты описал batch - пакетную обработку. chain - как раз последовательно.

че там за ошибка

Roman-Kolosov Автор вопроса
Andrey Helldar
Главный вопрос: зачем распараллеливать, если выпол...

последовательно что бы не ловить таймауты, параллетить что бы быстрее процесс шел

Roman Kolosov
последовательно что бы не ловить таймауты, паралле...

последовательно что бы не ловить таймауты чет у тебя не то

@psytrgles вот начало

Andrey Helldar
@psytrgles вот начало

да, я читал еще тогда

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

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

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта