问题标签 [rsocket]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
55 浏览

c++ - 如何为 android ndk 构建 rsocket-cpp

你能帮我建立rsocket-cpp图书馆吗android ndk?主要问题是包含follyfmtcmake 项目,以便rsocket-cpp在随后的构建和链接中自行找到它。

我能够使用INSTALLED folly 和 fmt 构建 rsocket-cpp(这意味着 rsocket-cpp 可以使用 找到并链接它们find_package)。但这里的目标是创建一个构建配置,以便cmake为每个 android arm 和 x86 平台构建 rsocket-cpp,只需这些依赖项包含为未构建的 cmake 项目

0 投票
0 回答
66 浏览

spring-security - 使用 Spring + RSocket + Websocket 添加 CORS 配置

如何添加 CORS 配置以限制一组允许的主机向通过 RSocket 公开的 websocket 发出请求?

我尝试了@CrossOrigin 注释但没有任何运气,我尝试添加以下内容但没有任何运气。我能找到的关于 RSocket 的所有示例都不包括 CORS / SSL 等,这些都是构建任何严肃应用程序所必需的。

0 投票
1 回答
354 浏览

java - 带有 Spring Boot 的 RSocket 通道 - 客户端错过了他们自己的第一条消息

假设我有一个简单的 RSocket 和 Spring Boot Server。服务器将所有传入的客户端消息广播到所有连接的客户端(包括发送者)。客户端和服务器如下所示:

服务器:

客户:

问题是:客户端发送的第一条消息由服务器处理,但没有再次到达发送者。所有后续消息都将毫无问题地传递。所有其他已连接的客户端将收到所有消息。

到目前为止我在调试时注意到的

  • 当我在客户端调用 channel() 时,会调用retrieveFlux() 和 subscribe()。但是在服务器上,断点并没有在相应的方法中触发。
  • 只有当客户端使用 send() 发送第一条消息时,才会在服务器上触发断点。
  • 在服务器上使用 .delayElements() 似乎可以“解决”问题。

我在这里做错了什么?为什么它首先需要 send() 来触发服务器断点?

提前致谢!

0 投票
1 回答
1553 浏览

spring-boot - rsocket 使用 RSocket-Java 为 Spring Rsocket Server 路由元数据

如何设置路由元数据(在服务器使用 Spring Boot Rsocket 时仅使用 RSocket-Java 在有效负载中。

Flux<Payload> s = connection.flatMapMany(requester -> requester.requestStream(DefaultPayload.create("Some Message")))

服务器正在使用 @MessageMapping("/route")

0 投票
0 回答
226 浏览

javascript - RSocket:如何将消息从服​​务器(spring,webflux)发送到客户端(js)特定的观察者(端点)从其他地方然后是Spring控制器

我是RSocket世界的新手。 你能告诉我如何将消息从服​​务器发送到 javascript(Angular) 应用程序中的特定观察者吗?我正在创建多人吃豆人游戏,我必须将怪物位置从服务器发送到客户端。我想在其他地方执行此操作,然后是控制器。我知道如何在 spring 到 spring 应用程序中执行此操作,因为我们可以使用 RsocketRequester.route() 将消息发送到客户端的特定端点,但我不知道如何在 js 环境中创建类似的东西。更准确地说,我想在 websocket ( + STOMP) 中做同样的事情。这是示例:

在这里我有确切的端点。我可以使用 SimpleMessagingTemplate( 在每个地方) 发送消息,但是如何在 rsocket 中做类似的事情?客户端:

在 RSocket (js) 中,请求看起来像这样,例如,只有当我们在控制器中处理请求时,我们才能轻松地从服务器订阅响应。(控制器知道将响应发送到哪里)

服务器

在这里,我可以使用 SimpMessagingTemplate 将消息发送到特定位置,例如“/pacman/update/monster”(js)。怪物的应用流程看起来像(在服务中创建 5 个线程,它们移动并将所有时间位置发送到客户端(GameObjectSender 在这里注入)):

服务器:

0 投票
1 回答
812 浏览

spring - RSocket 通道错误:“reactor.core.publisher.Operators.error - 称为默认 onErrorDropped 的运算符”与合并通量

我想创建一个 rsocket 通道,其中从服务器发送的数据可以是对客户端请求的反应或推送。我为此使用了通量合并。

它是参考数据:客户端可以要求刷新,服务器也可以推送更新。

所以我在服务器端有这个:

它的工作原理是当我停止客户端时出现以下错误:

如果我不进行合并,我没有错误。

我尝试了许多不同的版本,但我无法找到一种方法来让客户端退出时推送和无错误记录。

我错过了什么?

非常感谢。

0 投票
1 回答
920 浏览

spring-boot - rsocket - 如何平衡负载

rsocket 似乎是一个很酷的主意。我有这个问题,我找不到更好的答案。

让我们考虑一下这个初始设置。客户端按顺序向 server-1 发送多个请求。

server-1 正在执行一些计算密集型任务。因此,自动缩放器在一段时间后创建了另一个服务器实例,即 server-2。现在设置变成了这样。

根据我的理解,客户端-> server-1 连接已建立并保持活动状态。我们将此连接用于所有客户端-服务器通信。如何利用另一台服务器 - server-2 来共享一些这样的客户端请求。

否则它将是一个顺序处理。

我使用带有 rsocket 的弹簧靴。

0 投票
0 回答
390 浏览

spring-webflux - WebFlux+RSocket,如何将通量从 RSocket 传递到 WebFlux

我正在尝试将 WebFlux 与 RSocket 一起使用,示例应用程序具有服务器和客户端应用程序。都在 WebFlux 和 RSocket 上运行,我的 rsocket 通信类型是请求流。客户端-服务器应用程序对于几个并发请求运行得非常好,但是当我用 1000qps 和 8 个线程加载测试时,请求开始挂起。在调查下面的示例代码通过负载测试。


工作样品

RSocketClientConfig.java

客户端.java


不工作

RSocketClientConfig.java

客户端.java


如何正确地将请求流映射到通量

0 投票
0 回答
528 浏览

angular - 连接基于 Spring RSocket 的后端时的 Rsocket JS 问题

我尝试使用 Angular、Spring RSocket、Spring Data Mongo Reactive 创建客户端/服务器示例。

完整的代码,请在此处查看

后端代码:

在前端代码中。

我尝试使用requestStream方法连接消息路由,但失败了,在rscoket-jsAPI 中,似乎我必须在那里设置一个Subscription选项并设置请求号,否则它根本没有连接。

当我运行前端应用程序时,在浏览器控制台中出现以下错误。

更新:阅读相关文档后,我自己解决了这个上限集合。默认情况下,Spring Data Mongo 不会为您创建上限集合。

现在我在客户端遇到另一个错误,有一个意外关闭错误导致RSocketWebsocketClient

更新 2:已解决。data应该是当null服务器端不接受有效负载时。

最终的工作版本被合并到master中。

0 投票
0 回答
63 浏览

rsocket - RSocket Resume() 中的 streamTimeout() 和 sessionTimeout() 是什么

RSocket Resume() 中的 setreamTimeout 和 sessionDuration 有什么区别?如何/何时使用它?