Евгений
вы чем синтаксис меряете то?
Человек сам по себе является не очень точным, но всё же измерительным прибором.
Не требуется лазерного дальномера, чтобы сравнить длину ложки и расстояние от петербурга до москвы. Когда разница разительна восприятия вполне хватает для таких задач.
Приборы нужны когда надо сравнить две близкие друг другу величины: например синтаксис руби и питона, sml'я и окамла
Маjко
Хуйня,он сравнивает не на наличие разницы а на субъективную приятность
Маjко
А она зависит полностью от предыдущего опыта и привычек
Евгений
Нет, субъективная приятность основана на объективной удобности, а предыдущий опыт и привычки -- это дополнительные факторы, искажающие результат прост. Можно ввести на них поправки, если учесть множество "измерений" разнообразными "приборами"
պլհկ
> объективная удобность
պլհկ
Ну все сука ты огребаеш
Маjко
+
Anton
Есть две основные проблемы в распределённых системах:
2. Строго однократная доставка.
1. Гарантированный порядок сообщений.
2. Строго однократная доставка.
Anton
Даааа
Anton
Кто нить работает с распределенкой? =)
big
p2p считается?
Anton
ну если p2p шина сообщений, то можно отнести к gossip протоколу =)
big
понел о чем ты
Евгений
Конечно чуваку, который всю жизнь забивал гвозди камнями, нейлер может показаться неудобным.
Но тем не менее ход исторического развития показывает, что люди забившие гвозди камнями постепенно переходят на обычные молотки, а вот "регрессия" от нейлера к ним носит в основном вынужденный характер. Извиняюсь за аналогию, но она просто показывает, что объективная удобность существует
Евгений
big
Anton
не го =)
Anton
Зависит от реализации - если синхронный - то в принципе не возможно, если асихронный - читает складывает в очередь на обработку, то обычно в таких протоколах есть sequence - или request_id
Anton
индификатор запроса, или порядковый номер
Anton
Вообще реализации по приему сообщений которые я встречал, допускают наличие дубликатов, они записывают номер доставок, и просто их инорируют
Filipp
Это хорошо когда клиент это поддерживает
Filipp
А вот когда надо пушить в сторонний сервис из распределенной системы - начинается веселье
Anton
big
Евгений
Filipp
Anton
ща он предложит лоад балансер
Anton
=)
Евгений
Так если у тебя сервис один висит, то уже отказоустойчивости нет никакой xD
Filipp
Который ничего собственно и не гарантирует опять же
Filipp
Filipp
Если он распределенный
Anton
Евгений
Так изначальная проблема у тебя была в том, что сервис не адаптирован к распределённости и ничего не знает о порядке доставки и уникальности. Не могу себе представить как при этом может быть распределённым
Filipp
у меня есть распределенный сервис, в нескольких моих дц, а есть сторонний сервис, в который нужно пушить сообщения, в отдельном дц
Anton
Filipp
и вот этот сторонний не умеет в message-id
Filipp
я объясняю контекст изначальной шутки
Anton
Filipp
какой-нибудь json через rest
Filipp
обычно
Anton
ну тогда не страшно
Anton
отслеживать на уровне http - запрос ответ
Filipp
фишка в том, что у тебя может ответ не прийти, а сообщение приняться
Filipp
вот тебе дубликат
Anton
Это как так?
Anton
Ответ обязателен
Anton
по http
Anton
или он падает?
Filipp
а целостность канала обязательна во время ответа?
Anton
При этом успевает закоммитить транзакцию?
Anton
А, даже все так плохо
Filipp
нет транзакций, есть например телеграм, в который ты делаешь пост запрос с джсонкой и он отправляет сообщение
Filipp
но во время ответа например связь обрывается иногда
Anton
Тогда костылить
Anton
получать последние несколько постов - за период времени и сверять хеш сообщений =)
Filipp
или еще у них троттлинг так иногда отрабатывает, что они просто задерживают ответ на пост и отправляют сообщение через N секунд. а через N-1 уже какой-то из роутеров дропает соединение
Filipp
Filipp
и что делать если у тебя одинаковые сообщения?
Anton
А есть клиентсвкие либы под телеграм на расте?
Filipp
была парочку, но проще самому с reqwest накостылить
Anton
Anton
Marat
Anton
иногда 5
Anton
ну это наверно у тех у кого совсем фиговый инет =)
Marat
Для мессенджера хз
Alex
через неделю кстати начинается вторая часть курса про reliable distributed algorithms
Alex
на edx
Anton
О, ии в рекламе)
Denis
Alexander
/me присоединяется к вопросу
Alex
ну там довольно базовые вещи рассказывали, атомик бродкаст, детектор фейлов, консенсус по одному значению, терминологию всю объясняли
Alex
во второй обещали похардкорнее