Frage

Ich möchte Daten über HTTP an den Browser schieben, ohne meine django / Python-Anwendung zu töten.

Ich beschloss, einen Kometen-Server zu verwenden, um Proxy-Anforderungen zwischen meiner Anwendung und dem Client (obwohl ich noch nicht wirklich richtig herausgefunden).

Ich habe in den folgenden Motoren angesehen: umkreiste cometd ejabberd Anlegestelle

Hat jemand Erfahrung hatte mit diesen Servern arbeiten und den Einsatz von ihnen? Einsicht und Links, um die Themen in Bezug wären toll. Danke.

War es hilfreich?

Lösung

würde ich empfehlen, in Verdrehte suchen, ihre twisted.web Server, und der Komet bei divmod oben drauf geleistete Arbeit. Sie können weit mehr gleichzeitigen Verbindungen als herkömmlicher Thread oder Prozess-basierten Server verarbeiten, das ist genau das, was man für so etwas braucht. Und, ja, ich habe architected Systeme Verdrehte Verwendung für COMET Sachen, während Sie andere Dinge, für die mehr nach vorn gerichtete Web-Anwendungen daneben. Es funktioniert gut mit jedem Teil zu tun, was sie am besten kann.

Andere Tipps

Ich brauche etwas sehr ähnlich zu tun. Ich fand diese, haben aber nicht die Zeit gehabt, es zu betrachten richtig noch:

  

django_evserver ist einfach http-Server   für Django-Anwendungen. Es basiert auf   libevent Bibliothek. Der Hauptvorteil   von django_evserver ist, dass es bietet   Methoden der preempting django Ansichten.   Sie können eine Website in mehreren Render   jeder von ihnen Brocken, kann durch gehandhabt werden   verschiedene django Ansicht.

     

Mit dieser Idee ist es möglich, zu verwenden,   django_evserver als Komet-Server für   django-Anwendungen.

http://code.google.com/p/django-evserver/

Eine Option ist Netty, Client-Server-Socket-Framework basiert auf Java NIO von JBoss. Für einen Vergleich und Diskussion zu sehen. Es behandelt angeblich 100000 gleichzeitige offene Verbindungen auf einem Quad-Core-Server.

Wenn Sie Java ausführen würde ich StreamHub Comet Server empfehlen.

Zum einen in Bezug auf Ihre Bedürfnisse zu Ihrer bestehenden Anwendung ‚zu töten‘, die JavaScript enthalten hat einen wirklich niedrigen Platzbedarf auf weniger als 10K. Ich benutze es, Benutzer-Updates und Chat auf der Social-Networking-Website zum Schieben Ich baue. Getestet habe ich mit einem 1000 Hits pro Tag und es gab keine nennenswerten Auswirkungen auf die CPU.

Zweitens auf dem Einsatz folgte ich einige der Beispiele und war und läuft sehr schnell im Vergleich zu meinem Kopf gegen eine Wand mit CometD hämmern. Es gibt eine gute Comet Hallo Welt bekommen begann Führung und eine Google-Gruppe , wenn Sie auf etwas stecken .

Wenn Sie schauen, Django mit einem Comet-Server (umkreiste) zu kombinieren, um dieses Projekt prüft ich Django zu integrieren haben gehen und umkreiste in als „sauber“ und „real-world“ wie möglich hier: http://github.com/clemesha/hotdot

Die Projektadressen "real-world" Probleme wie Sicherheit und Protokollierung / Filterung / Modifizieren die In-Transit-Comet-Nachrichten, etc. - ist aber immer noch ein work in progress.

Wenn Sie IIS laufen lassen, können Sie WebSync Check-out ( http://www.frozenmountain.com/ websync ), eine standardkonforme (bayeux) comet Server und Client für .NET / IIS. Wenn Sie nicht die zusätzliche Last wollen, die On-Demand-Version ist eine SaaS-Option, die das Heben schwerer Lasten auslagert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top