User:SBisson (WMF)/PublicEventStream

This page contains personal notes from looking into EventBus for the ERI project. It represents my personal understanding and shouldn't be seen as documentation.


 * 1) The EventBus extension listens to MediaWiki hooks, creates messages and publishes them to an HTTP endpoint exposed by the eventlogging-eventbus service.
 * 2) The eventlogging-eventbus service checks that the messages validate against the json schema they are associated with and, if they do, publishes them to Kafka.
 * 3) The changeprop service receives messages from Kafka and determines which requests to execute based on its configuration.
 * 4) The changeprop service has the ability to publish new messages to Kafka based on existing messages and/or new data.
 * 5) Kasocki listens to Kafka topics
 * 6) Kasocki streams Kafka messages to external consumers through the internet. Exact protocol TBD but probably at least WebSocket.