Size: a a a

Programming Offtop

2021 January 09

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
Ну одно дело, когда вы отправляете команду и вызываете удаленную функцию с параметрами, переданными в команде. Другое дело, когда вы просто гоните поток событий. Я согласен с тем, что оно сильно пересекается.
gRPC точно так же может либо одиночное событие послать / получить, либо стрим открыть.
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
В грпц все делается по схеме. Она первично и собственно удаленный вызов описывается ей же. В рсокете и ZMQ свободная композиция сообщений, поэтому согласование идет по-другому. Больше свободы, больше ответственности. Вообще @why_oleg сделал довольно хорошую реализацию rsocket на кторе. Рекомендую потыкать. Вот сам завтра буду свою либу на этом обновлять. А то в понедельник мит, а у меня два месяца конь не валялся.
Ровно её и планирую потыкать, да)
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
gRPC точно так же может либо одиночное событие послать / получить, либо стрим открыть.
Я знаю. Но акценты другие. В грпц основной режим все-таки не стримы. А рсокет - это обычно именно стрим или два встречны стримы
источник

OY

Oleg Yukhnevich in Programming Offtop
рсокет в общем не совсем корректно сравнивать с grpc если уж на то пошло)
рсокет ближе ко всяким вебсокетам и http - это транспортный протокол со встроенными реактивными стримами
а grpc уже тогда лучше сравнивать с, например, есть rsocket-java-rpc - там где есть генерация из прото схемы
по сути похоже на grpc только со встроенной семантикой реактивных стримов
это если смотреть поверхностно
дальше в спеке есть request limiting и resumability - которые пока есть только в java имплементации и поэтому наверно про них все всегда забывают 🙂
а оно прям прикольно
источник

OY

Oleg Yukhnevich in Programming Offtop
и ещё один +, который в последнее время везде форситься
это то, что rsocket отвязан от транспорта
т.е. он может работать как поверх tcp (между серверами), websockets (клиенты, в частности браузер), aeron (протокол поверх udp), будет поддержка http/3 когда выйдет
а так же, можно в jvm через shared memory общаться
и вся логика написанная будет работать поверх этого всего и свитчиться между ними можно поменям пару строк кода

(мне кажется, я уже это который раз пишу в этом чатики, если надоело, то извиняюсь)
источник

AN

Alexander Nozik in Programming Offtop
Oleg Yukhnevich
и ещё один +, который в последнее время везде форситься
это то, что rsocket отвязан от транспорта
т.е. он может работать как поверх tcp (между серверами), websockets (клиенты, в частности браузер), aeron (протокол поверх udp), будет поддержка http/3 когда выйдет
а так же, можно в jvm через shared memory общаться
и вся логика написанная будет работать поверх этого всего и свитчиться между ними можно поменям пару строк кода

(мне кажется, я уже это который раз пишу в этом чатики, если надоело, то извиняюсь)
Там кстати не хотят ZMQ добавить? Вроде должна быть совсем тонкая прослойка, поскольку они довольно похожи по структуре.
источник

IP

Iaroslav Postovalov in Programming Offtop
Oleg Yukhnevich
рсокет в общем не совсем корректно сравнивать с grpc если уж на то пошло)
рсокет ближе ко всяким вебсокетам и http - это транспортный протокол со встроенными реактивными стримами
а grpc уже тогда лучше сравнивать с, например, есть rsocket-java-rpc - там где есть генерация из прото схемы
по сути похоже на grpc только со встроенной семантикой реактивных стримов
это если смотреть поверхностно
дальше в спеке есть request limiting и resumability - которые пока есть только в java имплементации и поэтому наверно про них все всегда забывают 🙂
а оно прям прикольно
а рсокет котлин на нейтиве есть?
источник

OY

Oleg Yukhnevich in Programming Offtop
Iaroslav Postovalov
а рсокет котлин на нейтиве есть?
da
источник

IP

Iaroslav Postovalov in Programming Offtop
просто я помню, что я пытался его на конан притащить, но тк готового си-апи нет, свой делать очень тяжело было
источник

IP

Iaroslav Postovalov in Programming Offtop
а там достаточно громоздкое апи на крестах
источник

IP

Iaroslav Postovalov in Programming Offtop
фолли, фьючи, вот это все
источник

IP

Iaroslav Postovalov in Programming Offtop
источник

OY

Oleg Yukhnevich in Programming Offtop
Alexander Nozik
Там кстати не хотят ZMQ добавить? Вроде должна быть совсем тонкая прослойка, поскольку они довольно похожи по структуре.
я не вижу препятствий написать транспорт, который будет слать в ZMQ - вопрос, а нужно ли?
источник

AN

Alexander Nozik in Programming Offtop
Oleg Yukhnevich
я не вижу препятствий написать транспорт, который будет слать в ZMQ - вопрос, а нужно ли?
Не знаю. Вероятно нет. Там Ярослав с Федором заморачивались долго сравнивали и по-моему в результате сделали и то и другое
источник

OY

Oleg Yukhnevich in Programming Offtop
Iaroslav Postovalov
просто я помню, что я пытался его на конан притащить, но тк готового си-апи нет, свой делать очень тяжело было
для справки: rsocket-kotlin написан с нуля (почти) и не зависит на другие имплементации типа java или cpp
источник

IP

Iaroslav Postovalov in Programming Offtop
Alexander Nozik
Не знаю. Вероятно нет. Там Ярослав с Федором заморачивались долго сравнивали и по-моему в результате сделали и то и другое
и то, и то - в плане?
источник

IP

Iaroslav Postovalov in Programming Offtop
Ярослав=я
источник

AN

Alexander Nozik in Programming Offtop
Iaroslav Postovalov
и то, и то - в плане?
И на ZMQ и на рсокетах сделали
источник

IP

Iaroslav Postovalov in Programming Offtop
Alexander Nozik
И на ZMQ и на рсокетах сделали
нет
источник

AN

Alexander Nozik in Programming Offtop
Ну и ладно.
источник