Клиентские запросы Esper хорошо подходят для нескольких клиентов
Насколько я понял, Esper построен с использованием запросов, чтобы различать, что важно, а не во входящем событии.
Я подумываю об использовании Esper, но не уверен, хорошо ли он подходит для моего сценария.
Мой сценарий:
Мне нужно отследить несколько вещей для большого количества клиентов. У меня будет большое количество событий, поступающих в секунду, и каждое из них должно определять скорость выполнения для определенного клиента.
Пример первый: допустим, я продаю спички, и поэтому я продаю очень быстро. Поэтому у меня все время много транзакций, и я хочу отслеживать, сколько совпадений покупает каждый клиент. Когда клиент купил 10 матчей, я хочу, чтобы он получил бесплатную коробку для своих матчей. Так что для этого простого примера я бы сказал, не используйте Esper.
Но, поскольку это может измениться, вопрос может заключаться в том, что клиент должен получить бесплатную коробку для своего 10-го купленного матча, и каждый третий после этого он будет получать 2 матча за приз одного.
После покупки 50 спичек он получит спичечный коробок размером XL, заполненный спичками.
И так далее, с несколькими правилами, накладывающимися друг на друга.
Мое предположение о том, как Эспер решит это:
Итак, как я думаю, что это должно быть сделано в Esper, это создать запрос во время выполнения для каждого клиента. Но так как у меня есть 2 000 000 клиентов, количество запросов будет увеличиваться очень быстро для каждого проданного мною совпадения. (Может быть, я неправильно понял, как работает Эспер?)
Теперь я застрял только с вопросами...
Насколько снижается производительность Esper при увеличении количества запросов? Можно ли заставить Esper производить расчеты на уровне клиента, не создавая специфический для клиента запрос?
Я также слышал, что Esper иногда не хватает потоков и стабильности, у кого-нибудь были проблемы с этим?
Я действительно совсем новичок в Esper в целом, и, возможно, это совсем не то, что я ищу. Или, может быть, я просто неправильно понял использование Esper.:)
Спасибо, что прочитали!
1 ответ
Я руководитель команды Esper. Команда Esper хотела бы услышать о стабильности или многопоточности вопросов или проблем. У нас очень много производственных приложений, работающих под управлением Esper/EsperHA во многих крупных компаниях без проблем. Мы всегда заинтересованы в дальнейшем улучшении продукта.
Насколько снижается производительность, зависит от типа запросов, конфигов и потоков, а также от процессора / памяти и т. Д. Да, расчеты могут выполняться для каждого клиента, например, для групповых и других конструкций.