Wir suchen Verstärkung!

Realtime Web

Der Begriff Realtime Web bezeichnet einen neuen, dabei längst überfälligen Schritt in der Weiterentwicklung von News-Seiten, Tickern und Co: Realtime Web ermöglicht den Usern, Informationen tatsächlich in Echtzeit zu verfolgen und selbst zu interagieren – ohne aktiv Updates anfordern zu müssen. Nicht nur für Medienunternehmen bald ein Muss.

Realtime-Web

realtime
Der Begriff „Aktualität“ hat im Zeitalter des Internets längst eine neue Dimension erreicht – nichts ist bekanntlich so alt, wie die Schlagzeile – oder der Kommentar – von gestern und bald vielleicht schon von vor einer Stunde. Mit der Entwicklung von HTML5 sind die technischen Grundlagen für wirkliche Echtzeit-Kommunikation gelegt – ohne den lästigen Klick auf „Refresh“ oder aktive Aktualisierungsabfragen seitens der Browser. Das bietet neue Möglichkeiten für alle interaktiven Formate beispielsweise Second TV, verbessertes Online-Banking oder aber die sinnvolle Verknüpfung von Live- und Online-Konferenzen. Realtime-Anwendungen, wie sie die IT:Agenten schon mehrfach erfolgreich implementiert haben, können heute, vor allem im Medien-Business, noch einen deutlichen Vorsprung vor der Konkurrenz sichern. Wir erstellen mit Ihnen gemeinsam ein zukunftsfähiges Konzept, wie Sie die Kommunikationsmöglichkeiten des Realtime Web gewinnbringend nutzen können – selbstverständlich abgestimmt auf individuelle Anforderungen und Budgets.

The Technology behind Realtime Web

Realtime Web wird erst durch die neuen Möglichkeiten umsetzbar, die HTML5 bietet. Zentral hierfür ist die Entwicklung der WebSockets: Eine klassische http-Verbindung hatte den Haken, dass jede Aktion des Servers eine vorhergehende Anfrage des Clients erforderte. Beim WebSocket-Protokoll dagegen reicht es, wenn der Client die Verbindung öffnet und diese Verbindung bleibt offen. Der Server muss also nicht, wie früher, Anfragen der Clients abwarten, sondern liefert selbständig neue Informationen.

Event- versus Threadgesteuert

Eine Software, die WebSockets gezielt einsetzt, ist node.js. Die ereignisbasierte node.js-Architektur kann deutlich schneller arbeiten als ihre threadgesteuerten Vorläufer: Läuft eine Datenbank-Abfrage, ist ein threadgesteuertes System für Sekundenbruchteile blockiert. Bei node.js dagegen werden gleichzeitig weitere Requests aufgenommen und bearbeitet. Die Ergebnisse werden via Callback-Funktion ausgeliefert. So können WebSockets statisch anmutenden Klick-Warten-Eingeben-Anwendungen in tatsächlich live gestreamte Webseiten umwandeln. Jede Form von Content und jede Veränderung einer Seite wird nun „streambar“, so wie bisher Audio und Video.
node.jsNode.js kurz gefasst:
  • Webserver, aufbauend auf der JavaScript-Engine Google V8
  • im Rennen seit Ende 2009
  • entwickelt von Ryan Dahl, der auch zu den Hauptentwicklern von V8 gehörte
  • eventbasierter JS-Server
  • bietet hohen Durchsatz im Vergleich zu herkömmlichen Servern
  • ermöglicht JavaScript-Nutzung nicht nur im Brow-fluidser, sondern auch auf der Server-Seite

Performance im Praxistext

Als IT:Agenten haben wir uns schon früh entschieden, bei der Umsetzung interaktiver Plattformen unter anderem node.js einzusetzen. Auf dieser Basis entstanden Realtime-Angebote wie ProSieben Connect, die während laufender Sendungen extrem hohen Traffic bewältigen. Das Projekt ist zudem Multi-Screen-tauglich, sprich, es findet eine direkte Kommunikation zwischen Fernsehern und mobilen Endgeräten, etwa iPads, statt. Herkömmliche Server wären schnell überlastet, da jeder Request einzeln vom Client angefragt werden müsste. Node.js hält dagegen die Verbindung offen, so dass eine ständige Aktualisierung stattfinden kann, ohne den Server unnötig zu belasten und ohne zu blockieren.

Technical Debt

Es gibt im IT-Bereich ein Dauerthema, von dem Projektmanager immer wieder schaudernd berichten: der Projektinfarkt! Ein Projekt, das lange und erfolgreich gewachsen ist, bricht plötzlich zusammen; nichts scheint mehr zu funktionieren; keine Deadline ist mehr zu halten. Gegen den Infarkt hilft Projekt-Fitness - und was den sportlichen Zeitgenossen der Body-Mass-Index, ist den IT:Agenten die Bilanzierung der technischen Schulden. Ein offener und durchdachter Umgang mit technischen Schulden kann IT-Projekte vor unerwarteten Katastrophen und Kostenexplosionen schützen.
„Technische Schuld(en)“, engl. „technical debt“, ist ein plastischer Begriff für die vermeidlichen und unvermeidlichen Versäumnisse, die sich im Laufe eines Software-Projekts ansammeln und die am Ende über Top oder Flopp des Projekts entscheiden können. Der aus der Unternehmensfinanzierung entlehnte Begriff „Schulden“ veranschaulicht, dass man auch in der Software-Entwicklung tagtäglich betriebswirtschaftliche Abwägungen treffen muss: Der Verzicht auf eine saubere Planung und Umsetzung verschafft einem zwar kurzfristigen Erfolg in Höchstgeschwindigkeit und einzelne Features kann man „mal eben schnell“ ergänzen. Das spart Kosten und erlaubt eine schnelle Reaktion auf den Markt. Langfristig erzeugen derartige Schnellschüsse aber beträchtlichen Zusatzaufwand: Jede weitere Ergänzung wird schwieriger; es gibt mehr Fehler, sie sind schwerer zu finden und zu beheben. Man hat gleichsam Kredit aufgenommen, um rasch ein Feature zu realisieren, und muss nun Zinsen für das Versäumnis zahlen, die Architektur und Dokumentation nicht entsprechend sauber an die neuen Erfordernisse angepasst zu haben.
dr. thomas fuhrmann

Dr. Thomas Fuhrmann

Chief Technology Officer
Neben dem Tagesgeschäft in zahlreichen Projekten rund ums Web kümmert er sich vor allem um neue Technologien: Low-Latency- und High-Throughput-Computing, Many-Core-Architekturen für Skalierbarkeit und Big Data, Zuverlässigkeit und Verfügbarkeit großer verteilter Systeme. Thomas Fuhrmann hat theoretische Physik, Mathematik und Informatik studiert, war Professor für Informatik an der Technischen Universität München und hat sich in vielen Forschungsprojekten unter anderem mit großen robusten Dateisystemen und ausfallsicheren Cloud- und Grid-Computing-Infrastrukturen befasst. So entstand beispielsweise eine der Grundlagen für die weltweit verteilte Analyse der am CERN-Teilchenbeschleuniger anfallenden Daten.
Wir erstellen Ihnen die Bilanz und Sie wissen immer, wo Ihr System steht.

A little debt speeds development so long as it is paid back promptly with a rewrite... The danger occurs when the debt is not repaid. Every minute spent on not-quite-right code counts as interest on that debt. ― Ward Cunningham, 1992


Es gibt viele Ursachen dafür, dass ein Software-Projekt technische Schulden anhäuft: Zwingt eine nahende Deadline ein Team, alles zu ignorieren, was der Kunde nicht sieht – also beispielsweise Architektur, Codequalität und Dokumentation – so spricht man von absichtlich eingegangenen technischen Schulden. Diese Art Schulden kann wirtschaftlich manchmal sinnvoll sein; sie sollte allerdings nicht aus dem Ruder laufen. Verstehen Programmierer bestimmte Architekturkonzepte des Projekts nicht und implementieren daher fehlerhaften oder schlecht wartbaren Code, so handelt es sich um unabsichtlich eingegangene technische Schulden. Solche Schulden sind selten sinnvoll und sollten in der Regel so schnell wie möglich beseitigt werden, weil sie die Tragfähigkeit der Codebasis schwächen und den Projektfortschritt gefährden.
Die IT:Agenten helfen Ihnen, die technischen Schulden Ihres Projekts zu bilanzieren. So vermeiden Sie Kostenexplosionen, gerissene Deadlines und andere Katastrophen. Denn aus der Bilanz kann die Projektleitung jederzeit ableiten, ob es sinnvoller ist rasch ein neues Feature zu ergänzen, oder ob bestimmte Bereiche der Codebasis so viel technische Schulden angehäuft haben, dass es kostengünstiger ist, erst diese Schulden abzubauen, bevor mit neuen Features begonnen wird. Auch Fehler und Systemausfälle lassen sich – in gewissem Maß – prognostizieren, wenn man die technischen Schulden bilanziert. So kann man rechtzeitig gegensteuern bevor die Probleme auch dem Kunden Schwierigkeiten bereiten.

Unsere Kunden und Partner

  • Detail.de
  • Gore Logo
  • Logo
  • Logo
  • Maiersports
  • Börse Go Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • WAF Seminar Logo
  • logo
  • logo
  • logo
  • logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo
  • Logo

Kontakt

Jetzt handeln und einen Termin vereinbaren

Telefon:
+49 89 961 601 89-90