问题标签 [wso2sp]

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 投票
1 回答
189 浏览

complex-event-processing - 如何在 Siddhi 流处理中表达事件去重逻辑

嗨:我需要在 Siddhi 流处理中实现以下重复数据删除逻辑。假设我有一个 InputStream,我想生成 OutputStream,如下所示:

(1) 当事件是 InputStream 中的第一个事件时(自事件处理引擎启动以来),将事件插入到 OutputStream 中。

(2)如果具有相同签名的事件,例如相同的事件名称,在2分钟的窗口内到达,我们认为该事件是相同的,我们不应该将该事件插入到OutputStream中。否则,我们应该将事件插入到 OutputStream 中。

我尝试使用事件模式进行过滤。但是,我找不到我可以在 Siddhi 中表达“否定逻辑”,即 if (not (e1 --> e2 with same signature in 2 minute window))。有没有一种聪明的方法来执行这样的事件重复数据删除逻辑?请注意,事件重复数据删除是事件处理所需的非常常见的表达方式。

如果我用 Java 实现它,那是相对简单的。我将创建一个哈希表。当第一个事件到达时,我将它注册到哈希表中,并将这个注册事件的事件可接受时间设置为 2 分钟后。当下一个事件到来时,我查找哈希表,并将检索到的事件的可接受时间与我当前的事件时间进行比较,如果当前事件时间小于可接受时间,我不会将其视为输出事件。如果可能的话,我更喜欢在 Siddhi 的流处理查询中实现声明性解决方案,而不是 Java 实现。

0 投票
1 回答
148 浏览

wso2 - WSO2 流处理器无法将文件保存到工作区

我在 ubuntu 服务器上安装了 WSO2 流处理器。然后启动编辑器并通过浏览器从另一台 PC 访问 Stream Processor Studio。我无法将文件保存到工作区(“读取未定义的文件位置时出错”)怎么了?我做错了吗?

0 投票
1 回答
63 浏览

wso2 - 为 wso2 sp 设置完全分布式部署后连接哪个 ip 地址

我已经为 wso2 流处理器建立了一个完全分布式的部署。以下是配置: 1. 192.168.0.1 和 192.168.0.2 有管理节点运行在 192.168.0.3 中的状态管理数据库。

  1. 192.168.0.1、192.168.0.2 和 192.168.0.4 也有工作节点

所以我询问了我需要使用哪个 IP 地址来推送我的 siddhi 查询(192.168.0.1:9543 或 192.168.0.2:9543)或者我是否需要反向代理。

谢谢

0 投票
2 回答
215 浏览

apache-kafka - siddhi wso2 sp 中打开的文件过多问题

在测试 wso2 流处理器服务器的性能时,我在部署目录中放置了数百个 .siddhi 文件。这导致“到许多打开的文件”问题。

我拥有的基本规则是:

  1. 所有规则都听同一个 kafka 主题

  2. 每个规则都有自己的组 ID(以便所有规则同时处理流)

  3. 当部署文件夹中的 .siddhi 文件数量超过大约 100 时。没有部署其他 .siddhi 文件,并且 siddhi 变得无响应。

谁能告诉我:

1.我哪里出错了?

  1. 在单个 siddhi 服务器上创建规则的限制是什么?
0 投票
2 回答
391 浏览

wso2 - 在多线程环境中合并 Siddhi 查询运行时

嗨:我有一个远程订阅事件频道的环境。事件通道会将事件推送到我的环境中,我将有许多规则来处理事件。我计划使用 Siddhi 框架来实施这些规则并相应地处理事件。

在我浏览了 Siddhi 代码库之后,似乎 Siddhi 执行模式在 siddhi 示例中得到了很好的体现,例如https://github.com/wso2/siddhi/blob/master/modules/siddhi-samples/performance-样本/src/main/java/org/wso2/siddhi/performance/SimpleFilterMultipleQueryPerformance.java。它执行以下步骤:

(1) 创建指定流查询(查询 1、查询 2..)的 Siddhi 运行时;(2) 为输入流创建输入处理程序。(3) 构造事件,然后使用输入处理程序发送事件;(4)创建的Siddhi Runtime添加回调,当输出流产生一些输出事件时,调用回调函数,传入输出事件。

通过简单的代码检测,我发现通过输入处理程序发送事件的线程与处理回调函数的线程相同。这让我推断整个 Siddhi 运行时是在一个线程中同步运行的。这个说法正确吗?

从我上面提到的 Siddhi 示例代码中,该代码使用多个事件发布者线程来处理事件的发送。所以在我看来,通过使用多个事件发送线程,我们可以实现 Siddhi 运行时的多线程执行。

由于我将要定义许多 Siddhi 查询,query1,query 2,...等,有两个选项:

(选项 1)类似于 Siddhi 代码库中的示例代码“SimpleFilterMultipleQueryPerformance.java”,我创建一个 siddhi 运行时对象,然后将所有 Siddhi 查询注册到这个单一运行时。然后我使用多个线程同时将事件发送到这个单一运行时的输入处理程序。

(选项 2)我创建了多个 Siddhi 运行时对象,我为每个对象注册了 Siddhi 查询的子集。我控制我的线程,以便一个特定线程仅发送专用于对应于一个特定运行时对象的输入处理程序的事件。也就是说,一个线程将事件发送到专用的 Siddhi 运行时对象;保证每个运行时仅由一个线程调用。

我想知道在性能方面哪个选项更好?

0 投票
1 回答
92 浏览

wso2 - 从 DAS 升级 WSO2 SP

我正在尝试从 WSO2 DAS 升级到 SP;这涉及使用 Siddhi SQL 脚本重写事件流定义。

我的目标是所有更改都被限制在 Siddhi SQL 脚本中(因此在 SP 中)。

我在微服务上下文中使用 DAS 作为简单的“消息代理”。

如图所示:

在此处输入图像描述

共有三 (3) 个微服务:A、B、C;服务 A 调用服务 B 和 C。

服务 A 向 wso2 数据代理发出“wso2event”;

事件由 DAS 中的接收器 (type="wso2event") 接收;

两(2)个发布者(eventAdapterType="soap")被用来形成两个SOAP消息并分别发布到服务B和C

以下是我的工件定义:

溪流:

接收者:

出版商 1:

出版商 2:

我四处寻找,找不到任何有用的例子。

任何人都可以请提供任何帮助

谢谢

0 投票
1 回答
175 浏览

wso2 - 如何在 siddhi 聚合查询中使用“select concat(col)”?

如何在聚合 siddhi 查询中获取一列的所有数据。例如,我的数据为:

我想将 siddhi 查询用作:

我想得到结果:

0 投票
0 回答
60 浏览

wso2 - WSO2 SP 管理器没有将规则保存在工作者/资源节点中

我已经建立了一个两个节点工作人员和一个单节点管理器 WSO2 SP 集群。但是当我将我的规则推送给管理器时,它似乎将它部署在工作节点中,因为它打印出日志“Siddhi app siddhi-app-name-1 of siddhi-app-name-1 成功部署在 ResourceNode { id: wso2-sp -worker-33-123, host: 10.112.33.123, port: 9090 } . 但是当我查看 10.112.33.123 中的 wso2/worker/deplyment/siddhi 文件时,它没有出现。

那么它部署在哪里呢?

0 投票
1 回答
52 浏览

wso2 - 有什么办法,如果liveSync失败,如何设置重试到liveSync?

我们有以下 liveSync 配置

在此处输入图像描述

如果我们将 heartbeatMaxRetry 设置为 10。在 10 次不成功的尝试后 liveSync 失败。失败后有什么方法可以再次运行 liveSync 吗?当 liveSync 失败时,我们在 HA 集群中有两个活动节点,如下面的屏幕截图所示。

在此处输入图像描述

0 投票
3 回答
71 浏览

wso2sp - linux上的WSO2sp没有正确保存文件

我已经在 Linux 服务器上安装了 wso2sp 4.2.0,打开了编辑器,创建了我的第一个 siddhi 文件并保存了它。我将它命名为“CargoWeightApp”,并希望在默认的 /wso2/editor/deployment/workspace 目录中找到它。但是该文件保存在 /wso2/editor/deployment 目录中,名称为“workspace\CargoWeightApp.siddhi”。知道为什么会这样吗?