16.122011

Practical WebSockets: Mix 'n match Pusher and Slanger

Pusher ist ein Cloudservice, der Websocketverbindungen über ein einfachesAPI zur Verfügung stellt.

Mit Slanger steht eine alternative, freie Implementierung zur Verfügung, die es erlaubt, seine Applikation gegen das Pusher-API zu entwickeln, ohne auf die Pusher-Dienste zugreifen zu müssen. Das hilft beim Aufbau einer Entwicklungsumgebung, die nicht auf eine bestehende Netzverbindung angewiesen ist; und auch dann, wenn etwa rechtliche Vorgaben den Einsatz eines Clouddienstes verbieten. Da Pusher aber überaus günstige Preise anbietet, spricht nach einem Entwickeln und möglicherweise ersten Einsatz von Slanger in der Produktivumgebung nichts gegen einen Wechsel auf die Pusherdienste, wenn solche rechtlichen Gründe entfallen.

Slanger ist in Ruby geschrieben und setzt auf Redis auf; es skaliert horizontal - sprich einer Zunahme der Verbindungsanzahl kann man mit dem Hinzustellen neuer Server begegnen.

Die Unterstützung der Einbindung auf Client- und Server-Seite umfasst jeweils die wichtigsten und ein paar obskure Umgebungen.

Wenn man plant, Websockets in neuen Projekten einzusetzen, sollte man also prüfen, ob man gleich zu Anfang die Pusher-APIs nutzt -- wenn man die Umgebung eines überraschend erfolgreichen Produktes möglichst schnell erweitern muss, ist ein Ausweichen auf die Dienste eines Drittanbieters, der umgegehend Resourcen zur Verfügung stellen kann, sicherlich eine Alternative, die man spätestens dann gerne hätte.