Size: a a a

2019 December 17

V

V in pro.elixir
Sergei Maximov
А в Go не может?
Шучу, конечно. Мне встречались команды с такой организацией процесса. Один наговнякал и свалил или в тимлиды или на другой проект или просто уволился, другие ловят баги, заплатки наклеивают
источник

V

V in pro.elixir
Ещё встречался подход "тесты не нужны" и "скорость впиливания фич  важнее корректности работы, и допустимы пара процентов битых данных"
источник

ЛЛ

Логичный Лесник in pro.elixir
Sergei Maximov
Это применимо к большинству языков, Go тут особо ничем не отличается
Как мы выяснили - в некоторых языках это не так удобно, например в PHP. В JS по-моему похожая ситуация, а в случае с нодой ещё более плачевная. Но возможно в нормальных ЯП это примерно одинаково удобно.
источник

ЛЛ

Логичный Лесник in pro.elixir
V
Ещё встречался подход "тесты не нужны" и "скорость впиливания фич  важнее корректности работы, и допустимы пара процентов битых данных"
Я работал в такой команде. И там проект был на PHP.
источник

ЛЛ

Логичный Лесник in pro.elixir
Но в целом подход супервихоров, как способ обработки падения кажется неплохим, но тут прикол в том, что другие части приложения могут не узнать о падении и о том, что чё-то под супервизором рестартануло.
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Логичный Лесник
Но в целом подход супервихоров, как способ обработки падения кажется неплохим, но тут прикол в том, что другие части приложения могут не узнать о падении и о том, что чё-то под супервизором рестартануло.
Наоборот в этом то и прикол. Другим частям пофик должно быть, они посылают сообщения
источник

ŹR

Źmićer Rubinštejn in pro.elixir
А придет он старому воркеру или новому - это уже его не колышет
источник

ЛЛ

Логичный Лесник in pro.elixir
Źmićer Rubinštejn
Наоборот в этом то и прикол. Другим частям пофик должно быть, они посылают сообщения
Окей, а если в других частях есть PID-ы упавших процессов, то как им послать сообщения в новые?
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Логичный Лесник
Окей, а если в других частях есть PID-ы упавших процессов, то как им послать сообщения в новые?
Когда воркер поднимается, он регестрирует себя в регистре процессов, и ты посылаешь по имени а не по пиду. Такой ДНС до того, как придумали ДНС
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Я ж говорю - интернет это монолит эрланга
источник

ЛЛ

Логичный Лесник in pro.elixir
Źmićer Rubinštejn
Когда воркер поднимается, он регестрирует себя в регистре процессов, и ты посылаешь по имени а не по пиду. Такой ДНС до того, как придумали ДНС
Прикольно, не знал.
источник

V

V in pro.elixir
Źmićer Rubinštejn
А придет он старому воркеру или новому - это уже его не колышет
А если сообщение будет отправлено в момент рестарта процесса?
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Тогда получишь exception в лицо
источник

ЛЛ

Логичный Лесник in pro.elixir
Źmićer Rubinštejn
Тогда получишь exception в лицо
То есть помимо всего нужно ещё за исключениями следить?
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Но гораздо больший шанс, что он залетит в ящик к умирающему процессу и умрет вместе с ним
источник

YS

Yuri S. in pro.elixir
я думаю, что пока человек сам не окунется в мир эрланга и его экосистему, можно бесконечно спорить
после ruby и rails, elixir с phoenix позволяет избавиться от кучи зависимостей в виде benastalkd и memcached, позволяет хранить состояния и быстро их получать, многопоточность из коробки, использует все ядра из коробки, все в одном приложении, не надо запускать 50 сервисов, релизы, не содержащие исходный код, возможность обновить код и при этом у пользователей не разорвутся коннекты с вебсокетами
источник

YS

Yuri S. in pro.elixir
бомбит немного
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Логичный Лесник
То есть помимо всего нужно ещё за исключениями следить?
Ну тык магии нету, естественно. Если в микросервисах у тебя не обновился ДНС - тоже получишь server not responding
источник

V

V in pro.elixir
Yuri S.
я думаю, что пока человек сам не окунется в мир эрланга и его экосистему, можно бесконечно спорить
после ruby и rails, elixir с phoenix позволяет избавиться от кучи зависимостей в виде benastalkd и memcached, позволяет хранить состояния и быстро их получать, многопоточность из коробки, использует все ядра из коробки, все в одном приложении, не надо запускать 50 сервисов, релизы, не содержащие исходный код, возможность обновить код и при этом у пользователей не разорвутся коннекты с вебсокетами
А бездисковые ноды можно поднимать?
источник

AM

Aliaksandr Martsinovich in pro.elixir
даже всем чатом нельзя продать эликсир человеку, который не хочет его купить
источник