как обрабатывать только каждое «х» сообщение? - PullRequest
0 голосов
/ 11 мая 2019

У меня есть система A (генерирующая сообщения каждую 1 секунду), связанная через WSO2 EI с системой B (REST API).Система B не нуждается в таком большом количестве данных, и этого было бы достаточно для отправки только каждого 60-го сообщения (так сказать, выборки).

Не могли бы вы, пожалуйста, подскажите, как отправлять только каждое "x"сообщение в WSO2 EI?Либо на основе времени (например, каждые 60 секунд), либо на основе счета (каждое сотое сообщение)?

thx много!

1 Ответ

0 голосов
/ 12 мая 2019

Не уверен, но, возможно, вам подойдет следующее:

  1. Сохраните значение счетчика где-нибудь (например, в базе данных)
  2. Когда система A генерирует сообщение, прочитайтеэто значение из хранилища (базы данных)

  3. Увеличить это значение и сохранить его (например, в базе данных)

  4. Проверить, если счетчик по модулю 60 = 0

  5. Если это так, отправьте в систему B, в противном случае ничего не делайте

Это должно быть возможно с использованием посредника db, посредника сценария и посредника фильтра.

Надеюсь, это поможет.

...