1

据我了解,Esper 是使用查询构建的,以区分传入事件中的相关内容和不相关内容。

我正在考虑使用 Esper,但我不确定它是否适合我的场景。

我的场景:

我需要为大量客户跟踪一些事情。我每秒会收到大量事件,每个事件都需要确定某个客户的进度速率。

示例一:假设我卖火柴,因此我卖得很快。所以我一直有很多交易,我想跟踪每个客户购买了多少匹配项。当一位顾客购买了 10 支火柴时,我希望他得到一个免费的火柴盒。所以对于这个简单的例子,我会说,不要使用 Esper。

但是随着这种情况的发展,问题可能是客户应该为他购买的第 10 场比赛获得一个免费盒子,之后每第 3 场他将获得 2 场比赛的奖金。

购买 50 根火柴后,他会得到一个 XL 大小的火柴盒,里面装满了火柴。

依此类推,多个规则相互叠加。

我对 Esper 如何解决它的猜测:

所以,我认为这应该在 Esper 中完成的方式是,在运行时为每个客户创建一个查询。但由于我有 2 000 000 名客户,我售出的每场比赛的查询量都会以极快的速度增长。(也许我误解了埃斯珀的工作原理?)

现在我只被问题困住了......

随着查询的增加,Esper 的性能下降了多少?是否可以让 Esper 在不创建客户特定查询的情况下在客户级别进行计算?

我还听说 Esper 有时缺乏线程和稳定性,有人对此有任何问题吗?

总的来说,我对 Esper 真的很陌生,可能根本不是我想要的。或者,也许我只是误解了 Esper 的用法。:)

感谢您的阅读!

4

1 回答 1

0

我是Esper的组长。Esper 团队希望听到稳定性或线程问题或问题。我们在许多大公司中有大量运行 Esper/EsperHA 的生产应用程序没有问题。我们总是热衷于进一步改进产品。

性能下降多少取决于查询和配置和线程的类型以及 CPU/内存等。是的,计算可以按客户运行,例如分组和其他构造。

于 2012-12-14T12:53:00.963 回答