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.
Realtime RecentChange | |
---|---|
Component | General |
Creation date | |
Author(s) | |
Document status | in draft |
Background
editIn 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.
- Redis was written as key-value storage, not messaging queue.
Proposal
editCreate "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)