Requests for comment/Realtime RecentChange

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

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

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