@proelixir

Страница 162 из 1045
Dmitry
03.11.2016
01:07:52
Я не уверен что везде прописал

Can
03.11.2016
01:07:56
И пусть себе валится сколько ей захочется

Dmitry
03.11.2016
01:08:05
Но у меня и не падало пока что

Can
03.11.2016
01:08:22
Ну можно засимулировать

Google
Can
03.11.2016
01:08:32
Въеби там эксепшен

Хардкодом

И проверь

Просто воркер с генсервером в котором в старте 1=2

И запусти

Мне тоже интересно

Dmitry
03.11.2016
01:09:42
Я уже комп вырубил)

Завтра проверю

Can
03.11.2016
01:09:59
Блин я тоже

Зато представь это чувство

Ты прописываешь в двух местах infinite

И если это работает

Ты плюешь в хейтера @noma4i

Google
Dmitry
03.11.2016
01:11:06
Хехе

Can
03.11.2016
01:11:52
No offense, но если ты реально пишешь засунь в жопу let it fail при том что это чинится Инфинит, то ты хейтер

Но если нет то надо отдать тебе должное это пиздец

Alexander
03.11.2016
01:12:40
ок, я потом по ssh на этот сервер войти не смог, cpu 100% ;)

Dmitry
03.11.2016
01:12:45
Хрен его знает почему оно падает и где

Alexander
03.11.2016
01:12:59
не сильно балуйте с infinit

Can
03.11.2016
01:13:16
Хм, а если ты ставишь инфинит и одновременно лимиты на количество рестартов в минуту

Оно не работает?

Alexander
03.11.2016
01:16:13
хрен его знает

вообще связка permanent + infinity может спокойно положить весь сервер

beam не отстрелит

Dmitry
03.11.2016
01:17:21
Так а где вы предлагаете писать infinity?

Alexander
03.11.2016
01:17:38
первые плагины по подсветке и линтингу эликсира для саблайма вешали весь компьютер

там даже Жозе приперся в ветку

мол шош вы делаете

Can
03.11.2016
01:20:08
def project do [app: :tg_bot, version: "0.1.0", elixir: "~> 1.3", build_embedded: Mix.env == :prod, start_permanent: Mix.env == :prod, deps: deps()] end children = [ # Starts a worker by calling: TgBot.Worker.start_link(arg1, arg2, arg3) # worker(TgBot.Worker, [arg1, arg2, arg3]), worker(TgBot.Repo, [], restart: :permanent) ]

В аппе и в воркере

Alexander
03.11.2016
01:20:39
Так а где вы предлагаете писать infinity?
infinity - это время которое ты даешь процессу на правильное завершение, соответственно тут все еще зависит от того, надо ли infinity использовать

infinity - не панацея

Can
03.11.2016
01:21:06
Я только что читал спеки

Google
Alexander
03.11.2016
01:21:13
если супервайзер посчитает что готов выйти в окно, то infinity ему не поможет

Can
03.11.2016
01:21:16
Про то что это время там ничего не было сказано

Alexander
03.11.2016
01:21:34
Про то что это время там ничего не было сказано
а спеки наверно ты по эликсиру читал? )

Can
03.11.2016
01:21:38
Не

Эрланг

Там написано что это рестарт полиси

И что если оно инфинит, то оно рестартит бесконечно

Alexander
03.11.2016
01:22:13
If the child process is another supervisor, it is to be set to infinity to give the subtree enough time to shut down. It is also allowed to set it to infinity, if the child process is a worker. See the warning below:

Alexander
03.11.2016
01:23:01
ага, эликсир )

Can
03.11.2016
01:23:05
что вообще значит Энаф тайм?

Alexander
03.11.2016
01:23:10
http://erlang.org/doc/design_principles/sup_princ.html

что вообще значит Энаф тайм?
достаточно времени, это как kill -6

Can
03.11.2016
01:23:31
Типа в каком там месте вообще время завязано

Alexander
03.11.2016
01:23:35
когда ты не kill -9 и все

а даешь время верно выйти всем детям

Can
03.11.2016
01:23:53
Надо написать специальный оборачивающий воркер

Который бесконечно рестартит

Google
Can
03.11.2016
01:24:18
Но если больше чем лимит рестартов во время

То холдит прежде чем снова рестартить

Решит проблему загрузки кпу

Но это костыл

Так лол

Мы про разный инфинит

Говорим

Я про другой

Admin
ERROR: S client not available

Dmitry
03.11.2016
01:25:55
Тык я и спросил где ты его предлагаешь писать

Can
03.11.2016
01:26:34
Перманент

А не инфинит

Май фолт

def project do [app: :tg_bot, version: "0.1.0", elixir: "~> 1.3", build_embedded: Mix.env == :prod, start_permanent: Mix.env == :prod, deps: deps()] end children = [ # Starts a worker by calling: TgBot.Worker.start_link(arg1, arg2, arg3) # worker(TgBot.Worker, [arg1, arg2, arg3]), worker(TgBot.Repo, [], restart: :permanent) ]

Так я вот

Тебе пишу

Каждый раз

Dmitry
03.11.2016
01:27:10
Такое я делал

Can
03.11.2016
01:27:16
Не помогает?

Dmitry
03.11.2016
01:27:23
Оно поилефолту такое кстати

Google
Dmitry
03.11.2016
01:27:29
Дефолту

Не помогает

Can
03.11.2016
01:28:27
Хм

Alexander
03.11.2016
01:28:36
вообще тут подойдет circuit breaker вариант

а не в лоб рестартить до посинения

Dmitry
03.11.2016
01:29:03
Вообще оно должно работать

Can
03.11.2016
01:29:06
Ну тогда аппа

Dmitry
03.11.2016
01:29:07
Но не работает

Can
03.11.2016
01:29:17
Старт перманент

Dmitry
03.11.2016
01:29:22
И есть 2 варима

Can
03.11.2016
01:29:46
Блин это довольно тупо

Dmitry
03.11.2016
01:29:54
1 - у меня падает воркер быстрее 5 раз за секунду ( или че там по дефолту )

Can
03.11.2016
01:29:58
Ага

Alexander
03.11.2016
01:30:00
иначе повторите мою ошибку, когда чтобы войти на сервер попавший в адовый цикл рестартов я его рубутнул и быстро ломанулся чтобы успеть до старта аппа

Dmitry
03.11.2016
01:30:36
Или просто эта милая фича эрланга не работает

Это как создатели no mans sky

Can
03.11.2016
01:30:55
А что если тупо сделать так

Верхний супервизор на выходе

Ловит падение

И ждёт остаток времени

До рестарта

Страница 162 из 1045