Quarkus: Support for RSocket

Created on 11 Apr 2019  路  9Comments  路  Source: quarkusio/quarkus

Hi,
have you thought about adding support for the RSocket protocol?
I think it's a good replacement/alternative for Rest communications.
Thanks
Mirko

kinquestion

Most helpful comment

Like RSocket support in Spring, I think there are a few things need to be done if considering RSocket as an alternative of REST.

  1. Standalone lightweight Netty based embedded RSocket server via TCP/Websocket, or add Rsocket Support to an existing Netty server(serves Rest over HTTP, and TCP/Websocket for Rsocket at the same time).
  2. RSocket client and server-side programming abstraction and communication, and provides RSocketRequestor some like helpers in client side , and reuse the Microprofile Reactvie Messages APIs to simplify the programming in server side, like what is done in Spring, which use Spring Messaging to hide the complexity of RSocket.
  3. Extract Quarkus security core outside of certain protocols, make it not depends on HTTP, Websocket, Rosocket, gRpc, etc, add Quarkus security support for RSocket(connection setup and request guard).

All 9 comments

I agree, especially with rsocket-rpc-java which is amazing and fully reactive, I think it would fit quarkus perfectly

Like RSocket support in Spring, I think there are a few things need to be done if considering RSocket as an alternative of REST.

  1. Standalone lightweight Netty based embedded RSocket server via TCP/Websocket, or add Rsocket Support to an existing Netty server(serves Rest over HTTP, and TCP/Websocket for Rsocket at the same time).
  2. RSocket client and server-side programming abstraction and communication, and provides RSocketRequestor some like helpers in client side , and reuse the Microprofile Reactvie Messages APIs to simplify the programming in server side, like what is done in Spring, which use Spring Messaging to hide the complexity of RSocket.
  3. Extract Quarkus security core outside of certain protocols, make it not depends on HTTP, Websocket, Rosocket, gRpc, etc, add Quarkus security support for RSocket(connection setup and request guard).

Shouldn't the issue relabeled as 'kind/extension-proposal' / 'kind/new-feature' @gsmet ? It seems weird to tag it as a question. Thanks

RSocket extension would be good solution for fast and reliable bi-directional communication between microservices. RSocket protocol can run over simple TCP socket or even over UDP with minimal overhead and it is much faster then any HTTP/1.1 or HTTP/2 based websocket channels

Has RSocket (unlike WebSocket) built-in support for re-connections?

Hi, is there a plan to support rsocket with Quarkus?

Any plans for this?

It would be great to have quick reactive communications channels between microservices. REST is good but it is not duplex; Websockets are not independent and bound to servelts. So if you need to pass messages between microservices you have to use some "monster" extension with a central messaging service or invent the weel on top of netty for the simple P2P communication channel.
So here comes rshocket to solve the problem.

Was this page helpful?
0 / 5 - 0 ratings