RSocket和#x2B;TCP和RSocket+;WebSocket?

RSocket和#x2B;TCP和RSocket+;WebSocket?,websocket,rsocket,aeron,Websocket,Rsocket,Aeron,我对RSocket完全陌生 我阅读了常见问题解答和动机页面(并浏览了协议页面),了解到RSocket可以在TCP、WebSocket和Aeron之上使用。但我不明白的是,在这些传输中使用RSocket有什么区别,因为所有交互模型都可以用于每个传输 我个人对使用RSocket通道实现双向通信感兴趣,但不知道应该使用哪种传输方式。 例如,RSocket(频道)+TCP和RSocket(频道)+WebSocket之间有什么区别 我到处都找不到答案,所以我希望这里有人能帮我 提前完成。RSocket为多

我对RSocket完全陌生

我阅读了常见问题解答和动机页面(并浏览了协议页面),了解到RSocket可以在TCP、WebSocket和Aeron之上使用。但我不明白的是,在这些传输中使用RSocket有什么区别,因为所有交互模型都可以用于每个传输

我个人对使用RSocket通道实现双向通信感兴趣,但不知道应该使用哪种传输方式。 例如,RSocket(频道)+TCPRSocket(频道)+WebSocket之间有什么区别

我到处都找不到答案,所以我希望这里有人能帮我


提前完成。

RSocket为多个传输提供了通用编程接口。您可以根据传输提供的服务质量选择传输。例如,如果您需要轻松地穿越防火墙,则选择WebSocket;如果您需要低延迟和高吞吐量传输,则选择Aeron。一切事物都是相对的。Aeron可以穿越防火墙,但配置更加专业,WebSocket可以提供合理的性能,但与Aeron不属于同一类别


许多其他因素开始发挥作用,所以你需要了解它们的基本特性,并与你的需求相匹配。

< P> RSoT让你用一个单一的反应式网络编程模型跨平台(JS、IOS、Android、C++服务器)编程。干净地支持来自RxJava等框架的常见反应式操作(可观察、可流动、单一、可能、可完成)

底层传输是一个实现细节。但这是一个关键的实现细节,在移动设备和GCP中托管的服务器之间,WebSocket可能是唯一可行的选择。在数据中心时,您可以根据需要选择Aeron或TCP


无论您选择什么,您都可以针对相同的更高级别的反应式网络操作模型进行编写。如果您知道您只需要对单个服务器到服务器操作使用Aeron,您可能不需要RSocket,您可以直接针对Aeron编程。RSocket为您提供了上面的抽象。

因此选择与RSocket无关。你得看看运输工具带来了什么?WebSocket=WS我仍然不太理解RSocket+TCP与RSocket和WS之间的区别。我认为TCP和WS之间的主要区别在于WS支持双向通信。但RSocket也带来了这一特性,即使在使用TCP时也是如此。WS-als使用TCP,所以您可以说将RSocket与TCP结合使用比将RSocket与WS结合使用更快(更好?),因为您跳过了一个额外的层。那么,RSocket+TCP和RSocket+WS之间有什么区别呢?带有TCP或Aeron的RSocket更适合于服务器到服务器的通信,而带有WebSocket的RSocket更适合于服务器到浏览器的通信。你能解释一下为什么会这样,或者给我指出正确的方向吗?我对这些东西(网络协议?)了解不多,我想了解一下,但不知道从哪里开始。顺便说一句,谢谢你的回答!大多数浏览器都在防火墙后面,防火墙只允许HTTP用于启动websocket.Ty进行应答!“让我们用一个反应式编程模型跨平台编程”到底是什么意思?你的意思是说RSocket提供了一个标准API,可以在不同的平台(浏览器、java服务器等)上使用,以便与其他平台通信吗?(例如从浏览器到java服务器)是的。基本上是这样。对于您的问题,您打算如何使用它,哪些客户机与最佳选择非常相关,您说,即使选择正确的传输非常重要,但从开发人员的角度来看,这并不重要,因为无论使用哪种传输,RSocket都提供相同的响应功能?也许这是一个愚蠢的问题,但是你如何选择正确的交通工具呢?例如,我计划在AWS中安装一个RSocketJava服务器,它可以与浏览器进行双向通信。那么你能举一个使用WebSocket或TCP的要求的例子吗?使用WebSocket。浏览器和云提供商都支持websocket。Demo.rsocket.io显示了这种情况,由于某种原因,我完全忘了看支持哪些浏览器。。。我认为,你不能在浏览器中直接使用Aeron或TCP。你知道这是不是真的吗?