Size: a a a

2019 May 13

MK

Maxim Kidney in JUG NN
Roman Khlebnov
С облачными технологиями всё таки очень даже просто: если твой стартап стрельнул - идёшь в облако чтоб хоть как-то лицом в грязь под highload'ом не ударить. Если у тебя уже свой большой парк ДЦ - ты у себя можешь сам облако запилить на K8S если припрёт
K8s в принципе, может крутиться на хардварном серваке, а при перегрузке разворачивать в облаке ещё инстанс. Вообще бюджетный вариант.
источник
2019 May 17

SS

Sergey Smyshlyaev in JUG NN
источник

RM

Roman Makhlin in JUG NN
острый спринг ролл?
источник

I

Ivan Bobkov in JUG NN
может наказан или проспорил 🙂
источник

MK

Maxim Kidney in JUG NN
На планинге наверное сказал что автотесты не нужны, был отправлен тестить вручную.
источник

II

Iurii Iurchenko in JUG NN
виртуальная машина с aot-компилятором... excelsior?
источник
2019 May 28

RM

Roman Makhlin in JUG NN
не могу что то нагуглить правильное решение, или хотя бы возможные списочком, все научные паперы лезут)
вопрос к знатокам:
есть децентрализованная система, то есть есть N систем с N базами, которые коммуницируют друг с другом с помошью эвентов. Появилась необходимость реализовать такую комманду А, что существуют следующие гарантии:
1. команда А выполняется строго на одной системе из N(то есть если на одной она началась, то другие системы не могут ее принять)
2. команда А синхронно дает ответ за конечное и предсказуемое время

то есть нужно как то, где то синхронизироваться, что бы как то дать понять другим системам о начале работы. вот о чем я успел подумать на данный момент:
1. синкаться на мьютексах в базе. но репликация требует времени, есть шанс нарушить консистентность
2. опрашивать все системы на предмет, не работают ли они над задачей А - явная проблема отсутствия барьеров между проверками
3. обратный вариант 2 - всегда нотифицировать всех о команде, которую сейчас кто то выполняет и кто. перед исполнением проверять свой список - пока что лучший вариант, но что то оч накладный по памяти.

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

MB

Maxim Belov in JUG NN
Roman Makhlin
не могу что то нагуглить правильное решение, или хотя бы возможные списочком, все научные паперы лезут)
вопрос к знатокам:
есть децентрализованная система, то есть есть N систем с N базами, которые коммуницируют друг с другом с помошью эвентов. Появилась необходимость реализовать такую комманду А, что существуют следующие гарантии:
1. команда А выполняется строго на одной системе из N(то есть если на одной она началась, то другие системы не могут ее принять)
2. команда А синхронно дает ответ за конечное и предсказуемое время

то есть нужно как то, где то синхронизироваться, что бы как то дать понять другим системам о начале работы. вот о чем я успел подумать на данный момент:
1. синкаться на мьютексах в базе. но репликация требует времени, есть шанс нарушить консистентность
2. опрашивать все системы на предмет, не работают ли они над задачей А - явная проблема отсутствия барьеров между проверками
3. обратный вариант 2 - всегда нотифицировать всех о команде, которую сейчас кто то выполняет и кто. перед исполнением проверять свой список - пока что лучший вариант, но что то оч накладный по памяти.

чувствую я хочу и консистенси и авалабилити одновременно, и таки придется чем то жертвовать или вводить какие то ограничения на саму задачу. пока что интересно, как вообще принято синкаться в децентрализованных системах. зоокипер не предлагать. желательно штатными джавовыми средствами
а zookeeper с curator тебе не подойдет? вроде как обычно так решают схожие проблемы
источник

MB

Maxim Belov in JUG NN
блин, не дочитал последнее предложение)
источник

MB

Maxim Belov in JUG NN
ну хорошо, а очередь с гаранитированной доставкой? из которой N систем будут разбирать задачи
источник

RM

Roman Makhlin in JUG NN
эм-м-м очередь преполагает что есть центральное место, а у нас его нет. в любой момент времени на любую из N хостов может придти задача А
источник

RM

Roman Makhlin in JUG NN
но это похоже не разрешимая без куратора задача, так что я наверное ретируюсь, и пойду придумаю эвристику какую нибудь
источник

RK

Roman Khlebnov in JUG NN
источник

RK

Roman Khlebnov in JUG NN
Не такое случаем ищешь?
источник

RK

Roman Khlebnov in JUG NN
Можешь посмотреть вариации на тему данного алгоритма, всё про распределённый консенсус
источник

RM

Roman Makhlin in JUG NN
хм-м-м спасибо! выглядит не просто, но реалистично
источник

RK

Roman Khlebnov in JUG NN
Вообще советую византийский паксос, он вроде ничего для начала
источник

RM

Roman Makhlin in JUG NN
чего только не придумают) и это ведь в 70ые придумали, да? чому такое в институте не проходят(по крайней мере я не проходил)
источник

RM

Roman Makhlin in JUG NN
хотя я не оч посещал конечные автоматы
источник

RK

Roman Khlebnov in JUG NN
Ну таки да, на основе этих алгоритмов запилили ZooKeeper и BookKeeper
источник