在GridGain 6中,我可以在远程节点上获取GridStreamer实例并将其用于addEvents吗?
我的想法是我需要一个节点,它可以为流处理生成数据,但不参与处理本身。
使用StreamConfiguration部分启动的所有节点都自动参与事件处理。如果在没有StreamConfiguration部分的情况下启动节点 - 那么它的Grid实例不会看到其他的流式传输。
GridClient似乎不支持流媒体
答案 0 :(得分:1)
您无法在未配置此特定流式传输器的节点上获取流式传输实例。但是,您可以通过提供不会在不应参与事件处理的节点上路由事件的GridStreamerEventRouter轻松实现您的要求。
例如,您可以使用带谓词的随机事件路由器,该谓词将按用户属性过滤节点(您可以使用GridConfiguration.setUserAttributes(...)为节点设置用户属性):
GridStreamerConfiguration streamCfg = new GridStreamerConfiguration();
//...
streamCfg.setRouter(new GridStreamerRandomEventRouter(new GridPredicate<GridNode>() {
@Override public boolean apply(GridNode node) {
return !"CLIENT".equals(node.attribute("STREAMER_ROLE"));
}
}));