问题标签 [reactive]
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.
c# - 具有最大并行度的 Observables HotConcat
我正在从数据库中读取时间序列数据,但这些数据点是不同地方的分区。因此,例如,如果有 1 Hz 数据,则每 3600 个数据点(一小时)存储在不同的分区中。当我读取这些数据点时,我必须以正确的逻辑顺序将它们返回给用户。所以,我必须返回 00:00 小时的 3600 个数据点,然后返回 01:00 小时的 3600 个数据点,……直到 23:00 小时。自然,数据库查询存在延迟。假设每个查询需要 10 毫秒。这意味着如果我进行 concat,它将有 24 * 10 ms = 240 ms 的延迟。我需要的是具有许多并行性的热连接。我不能按顺序执行所有这些查询,然后执行常规 concat,因为用户可能需要 1 年的数据。目前,我所拥有的是这样的:
对于 1 年的数据,这至少需要 87.6 秒。我需要这样的东西
例如,如果将并行度设置为 24,则前 24 次读取会立即全部预热并缓冲。然后我们返回分区 1,然后返回 2,……直到 24,一旦分区 1 完成流式传输,我们立即预热分区 25。一旦分区 2 完成流式传输,我们预热分区 26,等等。所有这些数据点都必须返回以正确的逻辑顺序。
我花了很多时间来做这件事,但我做的最好的(使用 IConnectableObservable)比 Merge 慢 5 倍(即使并行度是相同数量的分区)。反正有没有。这可以有效地完成吗?我真的很感谢任何帮助。
angular - 在非数组类型上可观察
我创建了 3 个 Angular2 服务,它们从不同的 http 端点检索类别、位置和项目。我现在想创建一个新服务,从这些服务中检索数据并从所有检索到的数据中创建一个新的 DataSet,但我无法从不可迭代的 DataSet 对象中创建一个 Observable。
有没有更好的方法来将数据整合到一个单一的结构中,比如使用 Observables 时?
c# - 使用 Reactive Extensions 逐组缓冲,嵌套订阅
我有一个事件源,它生成属于某些组的事件。我想缓冲这些组并将这些组(分批)发送到存储。到目前为止,我有这个:
所以有一个嵌套订阅组中的事件。不知何故,我认为有更好的方法,但我还没有弄清楚。
r - 闪亮仪表板下拉菜单中的反应对象
是否可以基于反应对象呈现仪表板标题下拉菜单或通知项?我的尝试没有奏效。
spring - Spring 反应式 Rest xml 有效负载
我正在通过邮递员发送请求以使用弹簧反应式编程 控制器尝试其余有效负载
聚甲醛
Pojo类
一世
样品请求
回复
响应的问题是没有获得完整的数据。Pojo 的 inputName 和 inputvalue 为空。 预期产出
非常感谢任何帮助。
mongodb - 通量串联不返回
我正在尝试使用 Spring Boot 2.0、webflux 和 reactiv Mongo 存储库。我有两种变体,首先删除然后将数据添加到集合中。在第一个变体中,线程阻塞直到删除完成,在第二个变体中,数据的添加被连接到删除。
变体 A
变体 B
变体 A 返回,变体 B 不返回。有什么区别?结合两个存储库操作的正确方法是什么?
rxjs - RxJS:使用 Websockets 和 Stomp 自动(断开)连接(取消)订阅
我正在为 Stomp over Websockets 构建一个小 RxJS 包装器,它已经可以工作了。
但是现在我有了一个非常酷的功能的想法,使用 RxJS 可以很容易地完成这个功能(希望 - 如果我错了,请纠正我)。
当前行为:
如您所见,我必须等待state == "CONNECTED"
才能订阅subscribeDestination(..)
。否则我会从 Stomp 库中得到一个错误。
新行为:
下一个实现应该使用户更容易。这是我的想象:
它应该如何在内部工作:
configure
只能调用 whileDISCONNECTED
- 当
subscribeDestination
被调用时,有两种可能性:- if
CONNECTED
: 只订阅目的地 - if
DISCONNECTED
:首先调用connect()
,然后订阅目的地
- if
- 当
unsubscribe
被调用时,有两种可能性:- 如果这是最后一次订阅:调用
disconnect()
- 如果这不是最后一次订阅:什么都不做
- 如果这是最后一次订阅:调用
我还不确定如何到达那里,但这就是我在这里问这个问题的原因;-)
提前致谢!
编辑:更多代码、示例和解释
当configure()在未断开连接的情况下被调用时,它应该抛出一个Error
. 但这没什么大不了的。
stompClient.connect(..)是非阻塞的。它有一个onSuccess
回调:
observeDestination(..)订阅一个 Stomp 消息通道(= 目的地)并返回一个Rx.Observable
然后可以用来取消订阅这个 Stomp 消息通道:
它可以这样使用:
现在我想摆脱myStompWrapper.connect()
. 该代码应this.connect()
在第一个通过调用订阅时自动调用,observeDestination(..).subscribe(..)
并this.disconnect()
在最后一个调用时调用unsubscribe()
。
例子:
scalability - 反应式编程的可扩展性
如果反应式编程避免线程并使用对象之间的异步消息传递,那么如何管理可伸缩性?
如何决定何时需要新实例?是否有一些 api 可以透明地管理这个?
r - 在 Shiny 中编辑反应函数的策略,“数据”必须是矢量类型,是“空”错误
目标:我正在尝试创建一个闪亮的应用程序,它显示(1)非度量多维缩放解决方案的压力图,(2)点配置的 ggplot,以及(3)通过绘制点配置聚类的结果聚类的点配置和叠加。
问题:前两个情节没有困难。而不是第三个情节,我得到错误:“数据”必须是矢量类型,是“空”
我将不胜感激有关如何解决特定问题的任何建议,即“数组中的错误:'数据'必须是向量类型,是'NULL'”
对于如何调试闪亮的任何一般性建议,我也将不胜感激。我唯一的策略是将代码视为不是响应式代码,我怀疑这种策略并不是非常有效。
我试图解决的问题:我搜索了 rseek 和堆栈溢出的错误并查看了帖子。在某些具有类似错误的情况下,问题在于没有计算必要的数据。我浏览了代码,将其视为普通(非反应性)代码,并使用了假数据。当我这样做时,我没有任何问题,所以我认为这与反应性有关?关于如何调试的问题 2 是对尝试像代码不是动态的那样进行调试并没有发现问题这一事实的反应。
可重现的示例:我将一个闪亮的应用程序放在一起,该应用程序具有随机生成的数据。在进行测试之前,我更新了 R 和我使用的所有包。
下面的情节是不起作用的情节
r - Shiny 中带有 rhandsontable 和 reactiveValues 的交互式绘图
我非常感谢以下代码的一些帮助:
我在应用程序中有一个情节和一个可动手做的对象。单击任何一个单元格都会加载相应的图,并带有阈值。单击绘图会更改其中一条垂直线的位置。
我想通过在相应的单元格中单击绘图来获取 x 值,并且我也希望能够通过在单元格中输入一个值来设置垂直线的位置。
我目前有点不知道应该如何将值反馈到 reactiveValue 数据帧。
提前谢谢了。