gpt4 book ai didi

Siddhi CEP 3.x 新手问题

转载 作者:行者123 更新时间:2023-12-02 05:28:25 24 4
gpt4 key购买 nike

我是 Siddhi 新手,有几个问题:

  1. SiddhiManager 线程安全吗?每个 JVM 共享一个实例是一种好的做法吗?
  2. 如何在运行时定义流并添加查询?似乎只有 siddhiManager.createExecutionPlanRuntime(plan) 它将创建一个新的 ExecutionPlanRuntime 实例。以及如何重新定义流和查询?

  3. QueryCallback 中的 inEventsremoveEvents 是什么?


    executionPlanRuntime.addCallback("query1", new QueryCallback() {
    @Override
    public void receive(long timeStamp, Event[] inEvents, Event[] removeEvents) {
    EventPrinter.print(timeStamp, inEvents, removeEvents);
    }
    });
  4. 如果我有大量数据流和查询,Siddhi 将如何扩展?

谢谢!

最佳答案

  1. 是的。 SiddhiManager 是线程安全的,这是一个很好的实践每个 JVM 一个共享实例。事实上,Siddhi Manager 就是这样的用于WSO2 CEP。
  2. 在 Siddhi 中,流定义 + 查询组合被视为执行计划。没有专门的方法来编辑执行计划在 Siddhi 级别,而不是使用重新部署创建执行计划方法。请注意,您将获得一个新的ExecutionPlanRuntime 对象由此。因此不能重用旧的输入处理程序引用。
  3. inEvents 数组表示 Siddhi 发出的当前事件,并且removeEvents 表示 Siddhi 发出的过期事件
  4. 如果您在单个查询中有大量查询,Siddhi 将能够很好地扩展执行计划。但是当使用多个执行计划进行扩展时Siddhi 将很快达到资源阈值,因为资源每个执行计划的利用率不高,这将导致性能下降。最近我们做了一个改进来解决这个限制:在此[1]邮件中进行了解释。 master 中可进行改进分支。

[1] http://wso2-oxygen-tank.10903.n7.nabble.com/Siddhi-Making-Disruptor-configurable-td136499.html

关于Siddhi CEP 3.x 新手问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37281740/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com