Superfeedr - это сервис для анализа каналов по запросу. Мы хотим предоставлять нашим пользователям аналитику и изучаем лучшую стратегию для этого.
Вкратце, мы хотим отслеживать количество операций (событий, например: новая запись в данном фиде) в нашей системе, а также агрегированные данные (количество подписчиков фида).
Конечно, агрегированные данные можно «вычислить» на основе событий. (количество подписчиков на ленту - это сумма подписок за вычетом суммы отписок). Тем не менее, поскольку мы хотим изучать это с течением времени (количество подписчиков на ежедневной основе), систематизированный подход может быть неоптимальным, поскольку мы будем пересчитывать одно и то же снова и снова.
Как создать такой компонент в своем приложении? Какой информационный поток? Какие хранилища данных? Какое графическое решение? и т.д...
Я знаю, что это довольно открытый вопрос, но я уверен, что мы не первые, кому это необходимо!
[ОБНОВЛЕНИЕ]: Инфраструктура: у нас есть набор рабочих, которые являются клиентами XMPP и взаимодействуют все вместе. Они основаны на EventMachine, что означает, что они не блокируются при вводе-выводе. Желаемая цель: мы должны иметь возможность собирать огромные объемы данных. В настоящее время мы уже находимся на уровне 200–300 сообщений в секунду и стремимся к 10–100 раз больше.