170 похожих чатов

> 0mq в принципе не может того, что может Кафка. Я

уже час пытаюсь от тебя это выяснить, что??? Что такого может Кафка?

27 ответов

19 просмотров

Нет сохранения сообщений (если упадет - все пропадет) Сообщение может быть недоставлено Нет кодирования сообщений Нет брокера

¿Сергей?
Нет сохранения сообщений (если упадет - все пропад...

Опять мимо…. что может Kafka, чего не может сделать 0mq быстрее?

Ты делаешь вид, что не заметил моего ответа, я понял Ну и ладно

Sergey- Автор вопроса
Sergey- Автор вопроса
Алексей Попов
Ты делаешь вид, что не заметил моего ответа, я пон...

Не заметил. Повторю вопрос? Что может такого Kafka чего не может zeromq?

Sergey- Автор вопроса
Sergey 🧻🤲
Персистентность

Опять мимо…. что может Kafka, чего не может сделать 0mq быстрее?

Sergey
Не заметил. Повторю вопрос? Что может такого Kafka...

Так как это всё ещё забавно, могу попробовать по одному пункту вкидывать Exactly once

Sergey 🧻🤲
Покажи пример быстрой персистентности на 0mq

я хуйней страдаю, присоединяйся на любой пункт просто отвечаешь "Опять мимо…. что может Kafka, чего не может сделать 0mq быстрее?"

Sergey- Автор вопроса
Алексей Попов
Так как это всё ещё забавно, могу попробовать по о...

Давай, я задал один вопрос. Интересно откуда ты какие-то пункты нашел

Sergey
Давай, я задал один вопрос. Интересно откуда ты ка...

Exactly once - опровержение будет? 0mq умеет в него?

Sergey
Давай, я задал один вопрос. Интересно откуда ты ка...

Все mq это тупой брокер. Одно сообщение - один клиент. Если хочется сделать что-то сложнее (fan-out, группы) то начинаются мучения

Sergey
Не заметил. Повторю вопрос? Что может такого Kafka...

Ты наверное сути этих инструментов не понимаешь. В своей сути, это канал связи. Фундаментально инструменты тут делятся на две группы. 1 группа, даёт в своей сути готовый "протокол". 2 группа даёт инструмент для реализации вещей, где "протокол" не даёт тех свойств, которые необходимы. Используя данные инструменты, ты соответственно лишаешся "надежности". Сравнивать либу и фреймворк нельзя. Это разные инструменты, каждый для своих задач. Да, где то их свойства пересекаются.

со всеобщего позволения отвечу Опять мимо…. что может Kafka, чего не может сделать 0mq быстрее?

Тупая Инфузория
со всеобщего позволения отвечу Опять мимо…. что ...

Какфка даёт всеобще признаную притокольную надёжность. С Зеро ты сам создаёшь соглашение под свои хотелки, отсюда отсутствие надежности.

Эркин Бахтушкин
Какфка даёт всеобще признаную притокольную надёжно...

Опять мимо…. что может Kafka, чего не может сделать 0mq быстрее?

Sergey
Давай, я задал один вопрос. Интересно откуда ты ка...

Чтобы попробовать закрыть гештальт, вернусь к перечисленным выше пунктам Гарантии доставки exactly once в 0mq нет. И нет в первую очередь потому, что нет гарантии доставки вообще: если клиент недоступен, сообщение будет потеряно. Сообщения, отправленные паблишерами, не хранятся в персистентном хранилище. Это то отсутствие журнала, про которое я писал выше. Тебя это возмутило, и если я не прав, покажи, пожалуйста, в чём я не прав. Я же нашёл в доке 0mq забавную фразу Reliability requires complexity that most of us don’t need. Не нужно вам это, короче 😁 В каких-то случаях действительно можно терять сообщения без ущерба для функционирования. Но далеко не всегда Ещё одно следствие отсутствия гарантий доставки - отсутствие гарантий на сохранение порядка сообщений. Опять же, для множества систем это может быть критически важно. Кафка позволяет гарантировать очерёдность даже для множества инстансов подписчика одного топика через партиции и группы. При этой схеме все сообщения с одинаковым ключом будут в порядке очередности предоставлены конкретному инстансу из группы. То есть не будет такой ситуации, что первое сообщения для пользователя А получил процесс 1, а второе процесс 2, и более быстрый процесс 2 отработал раньше процесса 1, что привело к несогласованности данных Ещё я писал про брокер. Брокер нужен для того, чтобы компоненты системы не были привязаны к текущей топологии. Чтобы новые сервисы можно было добавлять, удалять, переносить без изменений во всех остальных сервисах ZeroMQ is brokerless - они сами себя так описывают. Вроде всё очевидно. Сделать брокер самостоятельно можно, но из коробки его нет. Причём Кафка из коробки умеет поднимать кластер из множества брокеров, масштабировать партиции по брокерам. Реализовать подобную функциональность будет на порядок сложнее, чем реализовать одиночный брокер При всём сказанном выше я по прежнему считаю, что сравнивать кафку (и кролик, и натс - любой полноценный брокер) с 0mq на самом деле некорректно. Это инструменты для разных целей. Для ipc 0mq может быть очень хорошим вариантом. Пока мы остаёмся в рамках одной машины, нам может быть действительно важно общаться быстро, и гораздо проще будет учитывать все ограничения 0mq. Но полноценный брокер эта библиотека не заменит

Алексей Попов
Чтобы попробовать закрыть гештальт, вернусь к пере...

под конец темы с mq а не будет ли хорошей практикой абстрагироваться от message broker в приложении? или в большинстве случаев не имеет смысла?

Зависит от того, для чего используется брокер, и какие возможности вообще нужны Часто замена одного на другое невозможна или сложна технически, потому что кролик и Кафка используют разные подходы, и могут применяться для решения разных задач. Иногда в одном приложении одновременно используются несколько брокеров, каждый для своей цели (дискуссия о том, насколько это хорошая практика, вполне уместна, но тем не менее - так бывает) Но если ограничить применение брокера каким-то минимумом, который можно реализовать на каждом из них, такая абстракция вполне уместна. Одна из вещей, за которые я люблю молекулер - возможность одной строкой в конфиге менять транспорт между кафкой, кроликом, натсом, редисом, и чем угодно ещё, для чего существует адаптер При этом надо понимать, что в данном случае брокер будет использован только как транспорт. Его специфичные возможности могут не использоваться, сильные стороны могут игнорироваться. В примере с молекулером, например, не вижу зачем можно было бы использовать кафку или кролика, и, вероятно, всегда более оптимальным выбором будет натс или редис

Алексей Попов
Зависит от того, для чего используется брокер, и к...

спасибо за ответ у меня примерно такие же мысли былт, но не так структурировано

Алексей Попов
Зависит от того, для чего используется брокер, и к...

ну в молекулере делать несколько транспортеров одновременно это тот еще ад имею ввиду несколько брокеров в приложении

Andy Cox
ну в молекулере делать несколько транспортеров одн...

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

Похожие вопросы

Обсуждают сегодня

#include <stdio.h> #include <stdlib.h> #include <time.h> void mass_first_generate(int mass[5][7]) {     for (int N = 0; N < 5; N++) {         for (int A = 0; A < 7; A++) {   ...
Чувак
6
https://www.linkedin.com/posts/ugama-benedicta-kelechi-codergirl-103041300_mobiledevelopment-fluttertraining-handsonlearning-activity-7263445699227254784-IdHB?utm_source=share...
CoderGirl
16
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Ну вот просто даже давайте вот как. Какой нибудь конкретный кейс, можете в пример привести, где бч работает и приносит прикладную пользу, а не просто что бы было? Не крипту.
Alexander Andreev
22
объясните пожалуйста, почему функция не работает должным образом? вроде должно брать активное окно сравнивать его размер с размером экрана, и если есть совпадение = true прове...
JF
12
Гляньте, че бывает: Сегодня по одному проекту одной вебстудии делал проект небольшой, на их хостинге. На Modx revo. В определенный момент , работая в админке, вдруг перестал р...
Artem
7
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
12
> Копаем глубже > Следующий момент был, когда я спросил его, знает ли он JavaScript. Он ответил, что его учили работать с C#. Я тоже в университете писал на C#, но даже там мн...
Oleg Volkov
4
И никого не интересует какие пакеты кто использует. ((% Заходишь на сайт симфони и видишь поддержку Украины - по законам РФ это ж экстремизм. Только никто не отказывается от с...
Am Ambrion
11
Карта сайта