|
центр уведомлений
|
|||
---|---|---|---|
#18+
mayton, Он имел ввиду что все это для автора топика фиолетово. Плюсы и минусы конечно есть. Но для этого надо делать систему а не быть тут мимопроходящим. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 16:19 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
mayton, Большое число подписок автору как раз не нужно. Юзверей 500штук и события висят 10мин ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 16:22 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, Он имел ввиду что все это для автора топика фиолетово. Плюсы и минусы конечно есть. Но для этого надо делать систему а не быть тут мимопроходящим. Топик живет своей жизнью. Что мы будем спрашивать у автора разрешение на то что нам обсуждать? Только модератор решает когда что закрывать. А если кто-то хочет задать вопрос и получить ответ - так это не к нам. Это в toster или stackover. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 16:43 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
mayton, Ну вот смотри. Ты кликнул что rabbit лучше протокол. Я кликну что кафка это хайпово. Нельзя же однозначно сказать что первое лучше второго) Абстрактно не обсуждают архитектуру (с) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 16:54 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
В данных условиях автору вообще - по барабану что брать. Пусть берет ApacheActive MQ. Бесплатен. И ставится легко. Все протоколы поддерживает. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 16:56 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
mayton, Не потянет. Не видит разницы между сервлетом, сервисом Оси и системами на сообщениях. Удачи ему. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 17:08 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
О чем поговорить в пятницу? Андрейка поднимал темы про Kafka. Но у него не было ни логов ни сорцов. Можно взять синтетическую задачу. Например - генерацию простых чисел и просто пересылку из по схеме peer-2-peer. И реализовать ее для Kafka. Потом посмотреть на перформанс. Я пока использовал только IBM/MQ, ApacheMQ в своих продуктовых задачах. Ну еще был Amazon SQS. Но с этим тяжко экспериментировать. Нужен аккаунт в клауде. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 17:14 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
mayton ... Можно взять синтетическую задачу. Например - генерацию простых чисел и просто пересылку из по схеме peer-2-peer..... Потом посмотреть на перформанс. ... Apache.HC 0 up to 50-100 Mb / sec via 1Gb ethernet. потом взять кафку и посмотреть на перформанс ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 17:21 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev mayton ... Можно взять синтетическую задачу. Например - генерацию простых чисел и просто пересылку из по схеме peer-2-peer..... Потом посмотреть на перформанс. ... Apache.HC 0 up to 50-100 Mb / sec via 1Gb ethernet. потом взять кафку и посмотреть на перформанс ))) Я согласен. Только кейс для Apache.HC - с тебя. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 17:23 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Ну тогда с тебя генерация случайных чисел с такой скоростью ))) Apache.HC просто транспорт поверх сокетов, 50-100 Mb сек в реальных приложениях видел. Вся потеря времени исключительно преобразовании кодовых страниц (Unicode-UTF8/1251) и двойной-тройной буфферизации поверх NIO. p.s. это только в документации/рекламе про нативное выделение памяти написано, что оно дает возможность (десять раз ха), избежать множественного копирование из памяти-в-память при общении с системой ввода-вывода. На практике, все обстоит с точностью до наоборот. Скорость одиночного доступа к нативной памяти, ниже самого нижайшего плинтуса. Если не скопировать в нормальную heap-область, все вообще будет стоять колом. Т.ч. при NIO количество копирований память-память ни только не уменьшается, а наоборот становится до неприличия ненормальным. (дебажил Apache.HC, правда сильно предыдущих версий, но не думаю, что там что-то поменялось) p.p.s. Если под пересылкой ты имеешь в виду round-trip, отсылку и ответ, то тогда, скорее всего max 800-1000 сообщений в сек. на ethernet ))) Где-то 200-300 на ethernet 10 Mb, 400-500 на ethernet 100 Mb, 800-1000 на 1G и 1000-1200 на 10 Gb. ))) Нужно быстрее - покупайте нормальное оборудование, а не ethernet ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 17:32 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev Ну тогда с тебя генерация случайных чисел с такой скоростью ))) Я подготовлю их заранее. Я - хитрый. Неважно что будем гонять по сети. Хоть UUIDs. Главное чтоб был контент. И была какая-то возможность валидации. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 17:42 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
mayton, Не ну как неважно. Сообщение короткое и сообщение вместе с ворд документом это разные скорости. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 17:44 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev Если под пересылкой ты имеешь в виду round-trip, отсылку и ответ, то тогда, скорее всего max 800-1000 сообщений в сек. на ethernet ))) Где-то 200-300 на ethernet 10 Mb, 400-500 на ethernet 100 Mb, 800-1000 на 1G и 1000-1200 на 10 Gb. ))) Нужно быстрее - покупайте нормальное оборудование, а не ethernet ))) Я себе вижу тестирование так. Мы поднимаем конфигурацию 3х приложений. Producer (java), Consumer(java), Broker(*) Всё на localhost с сетевым интерфейсом локальной петли. Ее характеристики можно обсудить. Эта конфигурация поднимется даже на ноутбуке. Для разных брокеров (Kafka/Apache*) мы договариваемся о смысле параметров перформанса. Например для гарантий доставки (at least once, at most once..) мы стараемся реализовать одинаковые конфигурации хотя-бы на уровне нашего понимания. Для оптимизаций типа объединения месседжей в пачки - мы тоже договариваемся о том чтобы смысл бенчмарка был примерно одинаков для разных брокеров. Сетевой прикладной протокол - нам вообще не интересен. Но можно выбирать самый быстрый с точки зрения накладных расходов. После того как наиграемся с loopback - можно поднять конфигурацию хотя-бы на 2х физически разных хостах. Но я думаю что это будет не скоро. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 17:51 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev это только в документации/рекламе про нативное выделение памяти написано, что оно дает возможность (десять раз ха), избежать множественного копирование из памяти-в-память при общении с системой ввода-вывода. На практике, все обстоит с точностью до наоборот. Скорость одиночного доступа к нативной памяти, ниже самого нижайшего плинтуса. Если не скопировать в нормальную heap-область, все вообще будет стоять колом. Т.ч. при NIO количество копирований память-память ни только не уменьшается, а наоборот становится до неприличия ненормальным. (дебажил Apache.HC, правда сильно предыдущих версий, но не думаю, что там что-то поменялось) Ты поднял очень интересную тему. Тему off-heap доступа которую я тоже хотел-бы обсудить отдельным топиком. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 17:54 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, Не ну как неважно. Сообщение короткое и сообщение вместе с ворд документом это разные скорости. Для толстых сообщений необходимость мессенджинга - сомнительна. Их обычно бьют на две части. Одна - собственно тело сообщения - идет в NAS или любое другое хранилище. А в брокер пересылают только ссылку. Помнишь как в лихие 90-е на телефон кидали MMS-ки. Вот это оно и есть. Это SMS-ка с линком на веб. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 18:00 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
mayton, Да. Получается средняя по госпиталю. Непонятны размеры сообщений в боевой среде. Фикция а не тесты. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 18:10 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, Да. Получается средняя по госпиталю. Непонятны размеры сообщений в боевой среде. Фикция а не тесты. Ну у тебя есть продуктовая система с месседжами? Можешь оценить средний размер? И всякие процентили? Мы сымитируем. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 18:16 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
У меня была система которая слала FIX-messages для торговли equities. Какой средний размер месседжа? Я не помню. Но могу синтезировать парочку и просто прикинуть на глаз размер. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 18:18 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Больно у Вас как-то сложно. Сообщения. Толстые, тонкие. IMHO (упрощенно) 1. Может быть поток сообщений в одну сторону: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37.... Толстое оно, тонкое - глубоко пофиг. Каждое число конечное тонкое, но все вместе - так толсто, что просто обзавидуешься 2. Может быть обмен требующий полноценных round-trip'ов - Get first number - 2 - Get next number - 3 - Get next number - 5 etc...etc.. Тут опять таки, толстое/тонкое... 10 G ethenet, Jumbo frame... и толстое уже и не настолько толстое Но latency все равно будет ниже плинтуса, дабы Ethernet и TCP/IP. Родовая травма, которая лечится только полным выпиливаением. Ну и loopback в данном случае будет совсем не показатель. Т.к. сильно зависит от OS. Т.к. "правильный" loopback (если повезет с реализацией в конретной OS), "плохой" loopback (если не повезет) и реальный ethernet - ничего общего иметь между собой не будут. IMHO & AFAIK p.s. примерное масштабирование технологии Ethernet я показал выше. С каждым поколением: Цифирька скорости увеличивается на один нолик А латенси падает (кол-во round trip в секунду растет) только где-то в два раза p.p.s. сферические тесты сети вроде под 50 000 сообщений в секунду на 1Gb Ethernet показывают. Но то сферические тесты на C. Как только что-то прикладное, то минимум нолик удаляй, а то и все два. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 18:25 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev Ну и loopback в данном случае будет совсем не показатель. Т.к. сильно зависит от OS. Т.к. "правильный" loopback (если повезет с реализацией в конретной OS), "плохой" loopback (если не повезет) и реальный ethernet - ничего общего иметь между собой не будут. А меня устравивает loopback. Во первых - это позволяет нам оценить скорость работы брокера в чистом виде. Во вторых Василий нам где-то анонсировал zero-copy оптимизации для loopback в последних версиях JDK. Это хорошо. Мы будем это принимать в расчет. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 18:29 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev 2. Может быть обмен требующий полноценных round-trip'ов - Get first number - 2 - Get next number - 3 - Get next number - 5 etc...etc.. Тут опять таки, толстое/тонкое... 10 G ethenet, Jumbo frame... и толстое уже и не настолько толстое Но latency все равно будет ниже плинтуса, дабы Ethernet и TCP/IP. Родовая травма, которая лечится только полным выпиливаением. Я не уверен что нам стоит обсуждать именно latency. Тот сценарий который ты нарисовал больше похож не на MQ систему а на работу обычного синхронного веб-сервиса. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 18:34 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
C рабитами, кафками не сталкивался Т.к. там, где реально большие нагрузки (tradingview.com) все сообщения посылали руками через HTTP и проблем не знали В текущей прикладной области enterprise: прикладных систем очень много, но организация одна. Т.ч. db-link и так же, проблем не знаем. Нафиг нам эти Ваши кафки? Был опыт работы со СМЭВ и ГИС ГМП ))) Такой себе опыт. Электронный документооборот в виде сообщений с TIFF-сканами, которые потом распечатываются на бумагу на принтере, с клавиатуры вводятся в прикладную систему (ну или еще что-то с ними делается), из прикладной системы распечатывается отчет, сканируется, TIFF-файл посылается через СМЭВ, всякие кафки и SOAP'ы. Полностью ассинхронный, импортозамещенный, электронный документооборот. (опыт многолет назад, сейчас, возможно, все не так комично) ГИС ГМП тот момент более-менее заставили использовать ГАИ, но в налогой инспекции внедрение застопорилось т.к. алгоритм генераци пеней (по сообщениям в профильных конференциях) был замечательный. если ты что-то должен и пытаешься оплатить - тебе по закону начисляют пени минимум в 1 коп если ты пытаешься оплатить эту коп. - опять пени в 1 коп. и так до бесконечности ))) наши законы, налогавая и ГИС ГМП - сила! В любом случае, сколько не плати, все равно должен останешься Налоговой это как-то не очень понравилось и они внедрение приостановили ))) Поскольку налоговая это не какая-то ГАИ, а государство-образующая структура, продавить налоговую "и так сойдет" не получилось. Внедрение приостановилось. Когда мы писали модуль для ГИС ГМП для нашего заказчика, мы сразу сказали, что фиг клиенты что-то смогут оплатить через тот банк, который к ГИС ГМП подключится ))) очень долго они будут ходить и выяснять, что же с его платежем произошло ))) и в ГИС ГМП и в нашей системе ))) Единственный банк в СПб, который на тот момент отчитался о внедрении ГИС ГМП, был АКБ "Таврический". Чуть погодя ))), как все помнят, он объявил о своем банкротстве. Если между этими двумя фактами (ГИС ГМП и банкротством) какая-то связь - то простым смертным не ведомо ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 18:48 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
mayton, В том то и дело что тема то интересная, но редкая)). У меня все проекты синхронные. Ну и писать асинхронку с событиями сложнее. Так что опять ждем не ленивого ТС с нормальными вопросами. Он делает а мы... направляем))) Ты нормальный трафик событий не родишь. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 18:57 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev сферические тесты сети вроде под 50 000 сообщений в секунду на 1Gb Ethernet показывают. Но то сферические тесты на C. Как только что-то прикладное, то минимум нолик удаляй, а то и все два. Это как с субд. Начинаешь вставлять - 10 записей в сек. После тюнинга и настроек - 1000000 в сек))))) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 19:06 |
|
центр уведомлений
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Leonid Kudryavtsev сферические тесты сети вроде под 50 000 сообщений в секунду на 1Gb Ethernet показывают. Но то сферические тесты на C. Как только что-то прикладное, то минимум нолик удаляй, а то и все два. Это как с субд. Начинаешь вставлять - 10 записей в сек. После тюнинга и настроек - 1000000 в сек))))) Вот интересно с точки зрения Kafka consumer 1 сетевое сообщение != (не равно) 1 MQ сообщению? Метод poll изначально ориентирован на пачку. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
(про producer пока не говорим) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2021, 20:19 |
|
|
start [/forum/topic.php?fid=59&msg=40100740&tid=2120338]: |
0ms |
get settings: |
29ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
36ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
444ms |
get tp. blocked users: |
1ms |
others: | 281ms |
total: | 825ms |
0 / 0 |