@proelixir

Страница 735 из 1045
Dmitry
26.09.2017
22:04:09
Как вам идея: Если нету пока что супервизора - запускаем. Если есть - то Process.link его в остальных. Тогда если нода упадёт - все супервизоры тоже и перезапустятся, вот только после перезапуска уже не будет в регистре нифига

И один из них сможет запуститься

Но может идея с воркером и супервизором под капотом ещё лучше

А нетворк сплит - это непобедимая хреня

Google
Dmitry
26.09.2017
22:06:25
Разве что трахать внешнее апи

Хм... пока мы тут бегали сняв штаны, в 1.5 Эликсире вообще другая технология производства Supervisor ов

И она крутая, ага )

И всё равно не понимаю, как сделать чтобы дети сами не запускались...

Dmitry
26.09.2017
22:36:18
Ну, поэтому мне locker и swarm нравятся, два нативных, компактных решения, решающих network split проблему.

В 1.5 функционально ничего не добавили, но сделали действительно удобно с child_spec-ом.

Dmitry
26.09.2017
22:37:59
Я чёт не могу понять, в какой момент он запускает воркеры

Ааа, всё

Я понял

Либо запускает всё, что есть в ините

Либо надо через start_child

Dmitry
26.09.2017
22:40:50
Supervisor.start_child(sup, spec)

Alexey
26.09.2017
22:41:27
ога

Google
Dmitry
26.09.2017
22:42:01
Я почему то был убеждён, что надо в ините задать все спеки

А потом в старт_чайлд тольо выбрать

Alexey
26.09.2017
22:42:19
будет 1) суп, которому подчиняются 2) гс и 3) суп. если надо воркера создать, то 2 будет их досоздавать через 3

Dmitry
26.09.2017
22:42:19
И поэтому тупил сидел

Dmitry
26.09.2017
22:42:40
Есть такой способ, только в таком случае задаётся только один спек.

И в стартчаилд передаются только аргументы.

Стратегия: simple_one_for_one

Alexey
26.09.2017
22:44:29
и тип перманент

Dmitry
26.09.2017
22:44:30
да, я знаю

я думал просто там все такие стратегии )

Как то раньше не задумывался о старте воркеров не сразу

Наверное, так и навелосипежу

Alexey
26.09.2017
22:45:32
но вообще это выглядит, как хак или костыль.

Dmitry
26.09.2017
22:45:52
А то кто-то решит к себе в прогу засунуть моего бота, и переконфигурирует swarm к примеру

И кто тогда нехрен пойдёт? прально, я

Утону в issues на ГХ

Dmitry
26.09.2017
22:52:55
Самой библиотеке не нужно встроенное решение дистрибутирования, если она другую задачу решает.

Имхо

Dmitry
26.09.2017
22:53:42
Это звучит правильно

Только мозгов не хватает выкинуть

Google
Dmitry
26.09.2017
22:57:01
Лучше тогда сделать, чтобы бот не с аппликацией стартовался, а предоставить пользователю супервизора со start_link позволять уже где нужно пользователю самому стартовать.....а он уже сам решит, global, swarm или что ещё, а так же и сколько копий оных.

Dmitry
26.09.2017
22:57:23
Смотри как у меня

Dmitry
26.09.2017
22:57:34
Где?

Dmitry
26.09.2017
22:58:24
https://github.com/BucklerBot/buckler/blob/master/apps/buckler_bot/lib/buckler_bot/application.ex

Запускается супервизор

Сколько супервизоров - столько ботов

В супервизоре просто воркеры - с именами

В этом проблема

https://github.com/agalaframework/agala/blob/develop/lib/bot/bot.ex

Можно конечно везде в параметры метода засунуть Пид

И типо ебитесь как хотите

но чёт не очень

Ещё можно в конфиг запихнуть via_yuple колбэк

Но только сильно ли это поможет

Dmitry
26.09.2017
23:08:15
Не, иметь имя полезно, только не глобальное.

Завтра посмотрю код, я с телефона уже

Dmitry
26.09.2017
23:12:39
А может реально взять swarm и всё

Не париться

Зато всё из коробки и круто работает

Просто если определишь def handle_cast({:swarm, :end_handoff, delay}

Google
Dmitry
26.09.2017
23:13:33
То это как бы уже всё понятно

Alexander
27.09.2017
02:11:06
http://telegrammy.net/group/proelixir/page733.htm

вот что нашел, почти полный лог нашего чатика

Константин
27.09.2017
02:52:28
Крутотеечка))) вспомнил как все начиналось))

Alexander
27.09.2017
03:29:48
нашел, как я сюда пришел. На пару месяцев позже чем основной костяк )

кстати, никто не видел Rumata?

я помню он очень активным был

Константин
27.09.2017
04:05:29
Ага, пропал парень((

Наверно в js ушел

Прикол в том, что я его в группе не вижу и в бане тоже

видать реально ушел

Alexander
27.09.2017
04:09:34
последнее что я помню, он пытался донести, мол всем на эликсир насрать

это кстати так и есть

сейчас всем подавай nodejs

Константин
27.09.2017
04:25:59
полностью соглашусь с тобой

ощущение, что язык не взлетел из-за самого эрланга

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

а один человек не может сравниться с компанией

а почему из-за эрланга - деплой косячный. Php7 и деплоится просто и по скорости все норм

Google
Slava
27.09.2017
04:43:35
да ладно вам. эликсир хоть и все еще экзотика, но медленно врывается в этот мир. например, далеко не все новорожденные языки могут похвастаться добротной экосистемой для вебразработки со старта. вот у crystal'a все плохо пока что, но там даже сам язык еще не готов. у rust'a в вебе нет ничего и близко подобного фениксу. я бы скорее сказал, что людей отпугивает фунцкиональная парадигма, которая все же немного ломает мозг после императивщины и ООП. хотя, имхо, эликсир делает это мягче всех (по крайней мере для рубистов). а так вон даже thoughtbot себе на вооружение взяли эликсир, чем не перемога https://thoughtbot.com/services/elixir-phoenix

"If you like Rails, but wish it were much faster, a bit more expressive and functional, then Phoenix is worth getting acquainted with." опять таки, очень валидное замечание с их стороны, на мой взгляд.

Alexander
27.09.2017
05:19:53
а почему из-за эрланга - деплой косячный. Php7 и деплоится просто и по скорости все норм
эрланг вообще по своей природе подразумевает редкие деплои

поэтому хоткод релоад по пизде идет в CD

тот же руби нахрен никому не уперся, пока рельса не полетела

потом уже распробовали куча замкнутых экосистем на рубях пишутся

тот же homebrew для мака

Константин
27.09.2017
05:30:17
я тут пару дней думаю над тем, что надо научиться юзать язык без фрэймворков, а потом уже в них уходить

тестовой задание тут прилетело, в нем надо было на PHP OOP движек для блога замутить

дали 8 часов, я не справился)))

Писал что-то без готовых библиотек и yii фрэймворка лет 5 назад

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

А может просто замахнулся на что-то большее... реально писал MVC фрэймворк)))

Alexander
27.09.2017
05:35:34
феникс гниет заживо, коммиты раз в пару дней 1-2 коммита, кое-как 20 в неделю. Из которых 15 - это опечатки и дополнения в доки

тесты поломались МЕСЯЦ назад и всем похер

мерджы неделями висят вообще без комментов

там чуваки кто пулл реквесты кидает интересуется, есть кто живой

напоминает дело с Джанго

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