Hi,

With my recent work with metrics and other monitoring systems, I'm thinking
whether our model of sending everything and calculate in the analytics
server side is correct.

Basically IMHO, the majority of the product analytics use cases are
statistics calculation. For example, in APIM, we are calculating API
statistics, Subscription statistics, etc. And for this, we are sending
events for every request/response/fault to analytics server, and analytics
server is performing the actual statistics calculation on the events.
Therefore in the high traffic scenario, there are a lot of events needs to
be published to analytics server, and we are getting issues like "Event
Queue Full" in the gateway.

My proposal is, what if we calculate the statistics on the local node
itself (similar to the edge analytics by running Siddhi within the
products), and only send the minute statistics summary to analytics server
to do the global (across all nodes) calculation. With this way, the traffic
to analytics server will be reduced drastically as only the final
calculated value for each group by combination will be reported. Therefore,
the analytics server can focus on global summarization and other global
monitoring aspects.

Thanks,
Sinthuja.

-- 
*Sinthuja Rajendran*
Senior Technical Lead
WSO2, Inc.:http://wso2.com

Blog: http://sinthu-rajan.blogspot.com/
Mobile: +94774273955
_______________________________________________
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to