Requests for comment/Realtime RecentChange

From mediawiki.org
Request for comment (RFC)
Realtime RecentChange
Component General
Creation date
Author(s)
Document status in draft

Currently Special:Recentchanges is pretty muchless on most major wikis. And MediaWiki could provide the realtime recent changelist easy now.

Background[edit]

In big wikis likes enwiki or dewiki, there's a usally over one hundred edits per minute. It goes too fast and annoying to keep refreshing to following changes. Since the gerrit:52922 and gerrit:80958, we have the availibility to feed the machine-readable data with redis backend. And we have a wikitech:RCStream also. So now, MediaWiki already satisfied pre-requirements of this new "Realtime RecentChange".

Problem[edit]

  • The current backend, redis.
    • Redis was written as key-value storage, not messaging queue.
      • As far as I know, using redis as messaging queue is not recommended by redis team.
    • Redis sometimes ignore messages on high-load situation.
    • Redis cluster have many bugs.

Proposal[edit]

Create "Special:RealtimeChanges" page in MediaWiki core or as corresponding extension.

  • Possible message queue backends: redis (the current one), rabbitmq, zeromq, ...
  • Possible middlewares: python script (the current one), node.js script, ...
  • Possible realtime data trasfer technologies: websocket, ajax long pulling, flashsocket, ... or just socket.io (the current one)

See also[edit]