You are browsing a read-only backup copy of Wikitech. The primary site can be found at wikitech.wikimedia.org

Stream.wikimedia.org: Difference between revisions

From Wikitech-static
Jump to navigation Jump to search
imported>Krinkle
No edit summary
imported>Nemo bis
(→‎Usage: +Cocytus)
Line 14: Line 14:
* Several researchers are pulling the whole recent changes stream with all associated content (see wiki-research-l, December 2014)
* Several researchers are pulling the whole recent changes stream with all associated content (see wiki-research-l, December 2014)
* [[m:CVN|CVN]] (Not yet, as of February 2015)
* [[m:CVN|CVN]] (Not yet, as of February 2015)
* [https://github.com/notconfusing/cocytus Cocytus project for tracking citations on Wikipedia]


== Clients and alternative access points ==
== Clients and alternative access points ==

Revision as of 08:03, 28 July 2015

stream.wikimedia.org is a service to provide a live data stream of edits on Wikimedia wikis that anyone can tap and use to power editor tools and web apps, create beautiful visualisations, inform research, and extend MediaWiki.

It uses RCStream to subscribe to the RCFeed of Wikimedia's production cluster, and publishes this on the endpoint stream.wikimedia.org/rc. As a web developer, one can tap the stream using JavaScript. As an app developer, one can use a suitable client library for your platform.

Consuming RCStream is a cleaner approach than parsing the change messages from irc.wikimedia.org. Wikimedia Foundation continues to operate both (configured via $wgRCFeeds in wmf-config).

The RCStream server also responds at http://stream.wikimedia.org/rcstream_status with a simple text message; check this if you do not receive any events.

As of January 2015, RCStream implements version 0.9 of the Socket.IO protocol, not 1.0 (phab:T68232). See also socket.io 0.9 and socket.io-client 0.9 on GitHub for more information.

Usage

Clients and alternative access points

Server setup

RCStream runs on a set of backend servers (currently, rcs100x; puppet node; puppet role). Backend nodes: rcs1001, rcs1002.

The backend servers run instances of RCStream, with an nginx reverse proxy on each server.

An LVS load balancer (stream-lb) is situated in front of the backend servers.

The Beta cluster has a simplified setup on a single VM instance running the rcstream role, exposed as http://stream.wmflabs.org.

See also