Обновить
40

Пользователь

30
Подписчики
Отправить сообщение

А по какому переводу цитаты приведены? Это и не Малявинский и не Конрада, больше похож на перевод с английского (весьма неудачная).
Вообще, советую почитать именно Конрадовский перевод с его же комментариями, там очень и очень много всякого интересного - от тонкостей перевода и до понимания отдельных фраз в разные эпохи и разными комментаторами.

Как я понимаю, "работало в командах" - относится к одному и только одному случаю? Тогда почему именно указанные вещи достаточны для того, что бы работало? Или они необходимы, а не достаточны?
И, кстати, а что значит "работало"?

Увы, я не проходил курсов у Левенчука, так что не мог кратко описать содержимое подхода ШСМ, хотя с удовольствием их порекомендую. Но это уже "следующий уровень", на мой взгляд.
С рациональностью чуть сложнее, описанный подход ближе к "формально научному", но и с его применением для улучшения процессов все непростом, тем более все сложно с применением менее очевидных практик из LessWrong-овской тусовки (и вообще я к ним отношусь с любовью, но осторожностью).

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

А какие доказательства ожидаются? В тексте патента вряд ли будет ссылка на ТРИЗ (с чего бы?). При этом даже я общался с кучей знакомых физиков, которые в начале 200х в Питере делали сложные изобретения на запад и ТРИЗ там был одним из основных инструментов. Да и статья в Forbes про использование TRIZ в Samsung выглядит вполне убедительной.
Собственно, набор инструментария в ТРИЗ достаточно простой, освоить его не сложно, после чего многие решения можно считать тризовскими - что инженерные, что разработческие, что управленческие.

Но если погуглить пару минут, то можно найти какие-то материалы за пределами РФ:
https://www.researchgate.net/publication/269758536_Case_study_of_SAMSUNG_TFT-LCD_Technology_Innovation_using_TRIZ_method
https://ieeexplore.ieee.org/document/1308166
https://www.osaka-gu.ac.jp/php/nakagawa/TRIZ/eTRIZ/epapers/e2009Papers/eCheongTRIZSymp2008/09eP-Cheong-TRIZSymp2008-090709.pdf
Оценка их адекватности - отдельная и нетривиальная задача.

Ну, это уже давно не так, сейчас больше двух собседований не бывает. Но процессы найма вообще меняются сложнее всего, увы.
А по рабочим местам - нормальная современная компания, ноутбуки, рабочие станции, офис или удаленка и так далее. Много меньше проблем, чем, например, в Яндексе лет 10 назад (про сегодняшний просто не знаю). Некоторые вещи сделаны очень хорошо, некоторые еще нет.

Если я правильно понял amarao, то его смущает использование bad там, где оно не очень к месту. В оригинале действительно просто code smel, без прилагательных - и это правильно. Мне тоже стоило бы не добавлять характеристик, попахивает - и ладно. В конце концов у smell без прилагательных уже достаточно отрицательных коннотаций.

Хм, да, может быть заменить на process smell было бы правильнее. Я подумаю еще и, может быть, заменю.

Вот да, это уровень дизайна для джуниора. При этом вообще не понятно, зачем у джуна спрашивать системный дизайн.
Но судя и по другим отрывкам из книги, использовать советы оттуда для реального проектирования категорически не рекомендуется. Полезны ли эти советы для интервью - не знаю, у меня бы разработчик с такими ответами интервью не прошел бы.

Я бы искренне посоветовал подумать над общим решением, это же не только для онбординга нужно, а для тех же платежей, да и вообще для множества разных операций (почти для всех, на самом-то деле).

Кстати, а в Озоне разве нет общего стандартного решения для оркестрации? Вроде бы микросервисы у вас давно уже?

  1. Я скорее про число шагов, которое нужно выполнить в секунду, про скорость восстановления после падения воркера, про число одновременных процессов и т.п. Это те НФТ, которые больше всего влияют на подобные решения.

  2. Когда из одного сценария (саги) нужно вызвать другую, а потом продолжить работу. Частый сценарий, который через простую последовательность шагов уже не реализуется.

  3. Я не понял, как и когда другие воркеры поймут, что конкретные саги "зависли". Только по таймеру?

Насколько я понимаю, нет, ваше решение еще очень далеко от temporal. У вас поддерживается только линейная фиксированная последовательность шагов, а не любые сценарии; нет никакой поддержки версионирования сценариев; нет user-actions; весь ресайленс нужно реализовывать практически вручную; да и вообще, фактически, все нужно делать вручную, нет какого-то удобного фреймворка.

Возможно, я не прав, но решение смотрится не как "мы сделали оркестратор бизнес-транзакций на гошечке", а как "мы реализовали не совсем сагу для парочки конкретных кейсов". Ну или из статьи не видно, какая функциональность у вашего решения есть (зато хорошо заметно, какие проблемы у этого решения будут).

Потому и говорю, что вы еще в начале большого пути )

Еще немножко материалов по теме:
1) Про реализацию акторов поверх PG : https://pgconf.ru/2017/93989
2) Про workflow: https://habr.com/ru/company/oleg-bunin/blog/588488/

Конечные автоматы все-таки сложно программировать, особенно когда там сложные циклы внутри, я потому и перешел сначала на акторы, а потом на workflow.
Ну а в Озоне, подозреваю, еще в самом начале пути )

Ну, даже если не тащить temporal, то можно было бы сделать свое решение в духе temporal.io, там идеология (не реализация) гораздо удобнее классических саг.
Ну или вообще сделать оркестратор как библиотеку, в стиле Haydn4k. Впрочем, не факт, что на go вообще можно написать удобный оркестратор.

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

А, это конечно, тут сложно спорить.

Спасибо. Я вечно теряю эти ссылки.

Когда я последний раз смотрел (года четыре назад) мне не хватало разных вариантов обработки ошибки (заблокировать топик, отложить топик, переложить событие в конец топика и так далее - там много вариантов бывает) и смущала схема с одной таблицей.
Кстати, интересно, решение от ЯДа когда-то проросло из нашего с Яшей Сироткиным кода или независимо. Но за эти годы оно, конечно, сильно выросло, да и мы делали под Oracle.

А можно поподробнее, в чем именно задача? Как сделать шедулер чисто на kafka, без других хранилищ вообще? Я могу придумать какие-нибудь хитрые механизмы, но они будут довольно странными.

Это два разных доклада.
Два года назад я рассказывал про предыдущий проект, там как раз PG и персистентные акторы, а эта статья и доклад на HL2021 - про следующий проект, который я делал. Другой контекст, другие требования, другой я - и, как следствие, другой стек и другие арх.решения. Общего - только домен.
Ну и для меня главное в докладе - не про технические детали, а скорее про то, как подходить к архитектуре.

Информация

В рейтинге
5 363-й
Зарегистрирован
Активность