正如我所理解的那样,Esper是使用Queries构建的,用于区分传入事件中的相关内容和不相关内容。
我正在考虑使用Esper,但我不确定它是否适合我的情况。
我的情景:
我需要为大量客户跟踪一些事情。 我将每秒传入大量事件,并且每个事件都需要为某个客户确定进度。
示例一: 假设我卖掉了比赛,因此我卖得很快。 所以我一直有很多交易,我想跟踪每个客户购买的匹配数量。 当客户购买了10场比赛时,我希望他能为自己的比赛获得一个免费的盒子。 因此,对于这个简单的例子我会说,不要使用Esper。
但是随着这种情况的发展,问题可能是客户应该为他的第10场比赛获得一个免费的盒子,而在此之后的每个第3场比赛他将获得2场比赛的奖品。
购买50场比赛后,他将获得一个XL大小的火柴盒,里面装满火柴。
依此类推,多个规则叠加在一起。
我猜Esper会如何解决它:
那么,我认为应该在Esper中完成的是,在每个客户的运行时创建一个查询。但由于我拥有2 000 000名客户,因此我所销售的每场比赛的查询量都会迅速增加。 (也许我误解了Esper是如何工作的?)
现在我只是遇到问题......
Esper的性能会因查询的增加而减少多少? 是否有可能使Esper在客户级别进行计算而不创建客户特定的查询?
我也听说Esper有时缺乏线程和稳定性,有没有人对此有任何问题?
我对Esper整体来说真的很陌生,可能它根本就不是我想要的东西。或许我只是误解了Esper的用法。 :)
感谢您的阅读!
答案 0 :(得分:0)
我是Esper的团队负责人。 Esper团队很想听听稳定性或线程问题。我们在许多大公司中运行Esper / EsperHA的大量生产应用程序没有问题。我们一直热衷于进一步改进产品。
性能降低多少取决于查询和配置以及线程和CPU /内存等类型。是的计算可以按客户运行,例如分组和其他结构。