Mesetovic, B. (2011). Comet.NET, design and implementation of a Bayeux server for the .NET platform [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-42243
Moderne Web Applikationen basieren zunehmend darauf, dass Daten in Echtzeit vom Server direkt an den Browser ausgeliefert werden. Dieser Ansatz erhöht die Reaktionsfähigkeit und die allgemeine Usability der Applikation und ermöglicht verschiedene Szenarien für eine Real-Time Kollaboration zwischen Benutzer. Das Applikationsmodell, mit dem der Server die Daten an Browser über das HTTP Protokoll ausliefert, ohne dass sie explizit seitens Client angefordert werden, heisst Comet. Die im Comet Applikationsmodell definierten Technologien und Protokolle sind für die Web Applikationen, die Daten asynchron an Clients ausliefern möchten, von wesentlicher Bedeutung.<br />Eine der neuen Entwicklungen im Bereich von Comet Web Applikationen ist das Open-Source Protokoll namens Bayeux. Das Protokoll ermöglicht bidirektionale Kommunikation zwischen dem Server und dem Client und wird typischerweise dazu verwendet, Benachrichtigungen mit geringer Latenz direkt an den Browser auszuliefern. In der vorliegenden Master-Arbeit präsentieren wir Comet.NET, eine auf .NET basierende Implementierung von Bayeux-Server. Comet.NET ist ein stand-alone, hoch performanter Server, der sowohl Streaming als auch Polling unterstütz. Der Server bietet eine synchrone und eine asynchrone API, ist sehr skalierbar und robust und wurde so designed, damit er einfach in beliebige .NET Applikation eingebettet werden kann. Die Eigenschaften von Comet.NET werden anhand von Teletrader HTTP Push Service demonstriert. Es handelt sich dabei um eine Applikation für die Auslieferung von Marktdaten im Web. Am Schluss werden die Performance und Skalierbarkeit von Comet.NET evaluiert und mit Performance und Skalierbarkeit der Bayeux Referenz-Implementierung vergliechen.<br />
de
It increases the responsiveness of the application, improves the overall user experience and allows various real-time collaboration scenarios between users. This application model, in which the server delivers data to a browser via HTTP without the browser explicitly requesting it, is called Comet. Protocols and techniques defined by the Comet application model are essential for Web applications that need to asynchronously deliver events to clients.<br />One of the recent developments in the domain of Comet Web applications is an opensource application protocol called Bayeux. It provides means of two-way and low-latency communication between the server and the client and is typically used to deliver notifications directly to Web browsers as soon as they occur.<br />In this thesis, we present a native .NET implementation of a Bayeux server called Comet.NET. Comet.NET is a stand-alone, high-performance Bayeux server with support for both streaming and polling communication techniques. It offers synchronous and asynchronous application programming interfaces, is very scalable and robust and is designed to be easily embeddable in any .NET application.<br />Features of Comet.NET are demonstrated by presenting Teletrader HTTP Push Service, a fully functional enterprise stock market ticker application built on top of it. Furthermore, the thesis provides a detailed evaluation of the performance and scalability of the presented solution and discusses how it compares with the reference Bayeux server implementation.