Size: a a a

Laravel Framework Russian Community

2020 July 23

А

Артём in Laravel Framework Russian Community
Xenx
есть возможность как то проверять запущена (т.е. выпоняется в это время) ли какая то команда в ларе? речь про artisan команды
Команды запускаются как независимые процессы
источник

X

Xenx in Laravel Framework Russian Community
значит так нельзя? или может можно как то определить по каким либо признакам процесса что это та команда? или можно при старте команды писать куданибудь что она выполняется и в конце эту запись убирать, но тогда если команда упадет то в хранилище она будет выполняться бесконечно
источник

А

Артём in Laravel Framework Russian Community
Xenx
значит так нельзя? или может можно как то определить по каким либо признакам процесса что это та команда? или можно при старте команды писать куданибудь что она выполняется и в конце эту запись убирать, но тогда если команда упадет то в хранилище она будет выполняться бесконечно
Я не копал так глубоко. Возможно, по атрибутам процесса что-то и можно узнать.
источник

А

Артём in Laravel Framework Russian Community
Xenx
есть возможность как то проверять запущена (т.е. выпоняется в это время) ли какая то команда в ларе? речь про artisan команды
Цель всего этого какова?
источник

X

Xenx in Laravel Framework Russian Community
есть зависимые команды, нельзя допустить выполнения команды 2 во время выполнения команды 1
источник

А

Артём in Laravel Framework Russian Community
Сам ларавел в редис (кэш) пишет, вроде бы, для реализации опции without overlapping
источник

А

Артём in Laravel Framework Russian Community
Так что надо копать в эту сторону
источник

А

Артём in Laravel Framework Russian Community
Xenx
есть зависимые команды, нельзя допустить выполнения команды 2 во время выполнения команды 1
источник

X

Xenx in Laravel Framework Russian Community
ну тут тогда проблема с падением команды, или может можно как go defer испльзовать?
источник

X

Xenx in Laravel Framework Russian Community
да, видел это, но работает для одинаковых команд
источник

А

Артём in Laravel Framework Russian Community
Xenx
да, видел это, но работает для одинаковых команд
Как пример. Изучи и сделай по аналогии
источник

X

Xenx in Laravel Framework Russian Community
ок
источник

А

Артём in Laravel Framework Russian Community
А может и пакеты готовые есть
источник

SC

Sergey Chizhik in Laravel Framework Russian Community
Xenx
есть зависимые команды, нельзя допустить выполнения команды 2 во время выполнения команды 1
Можно через какой-нибудь shared storage (тот же Redis) делать признак что команда запущена и не выполнять другую если признак стоит, можно сделать через линуксовые семафоры например
источник

X

Xenx in Laravel Framework Russian Community
Sergey Chizhik
Можно через какой-нибудь shared storage (тот же Redis) делать признак что команда запущена и не выполнять другую если признак стоит, можно сделать через линуксовые семафоры например
а какую тут роль играют семафоры? просто про них не в курсе
источник

SC

Sergey Chizhik in Laravel Framework Russian Community
Xenx
а какую тут роль играют семафоры? просто про них не в курсе
Детально не скажу. Суть такая же, на уровне ОС проставляется признак того, что какой-то кусок кода выполняется и механизм не даёт запустить его ещё раз, пока признак активен
источник

А

Артём in Laravel Framework Russian Community
Платформозависимый способ межпроцессного взаимодействия
источник

А

Артём in Laravel Framework Russian Community
Как и sharedmem
источник

SC

Sergey Chizhik in Laravel Framework Russian Community
Артём
Платформозависимый способ межпроцессного взаимодействия
Почему бы и нет. Всё равно на линухе запускать, по крайней мере нам, а винда — говно)
источник

X

Xenx in Laravel Framework Russian Community
Sergey Chizhik
Почему бы и нет. Всё равно на линухе запускать, по крайней мере нам, а винда — говно)
безапеляционно заявляете. не надо так
источник