Server-sent Events

Django, Flask, Bottle, WSGI, CGI…
Antworten
nezzcarth
User
Beiträge: 998
Registriert: Samstag 16. April 2011, 12:47

Samstag 9. Mai 2020, 14:55

Hallo,

ich wollte mich einmal erkundigen: Hat vielleicht jemand Erfahrungen, ob/welches Python Webframework sich serverseitig besonders gut für Server-sent Events eignet? Gehen tut es ja mit allen Frameworks (so kompliziert ist das ja auch nicht und das meiste findet im Browser statt), aber vielleicht mit einigen besonders gut/elegant?

Danke.
Sirius3
User
Beiträge: 11993
Registriert: Sonntag 21. Oktober 2012, 17:20

Samstag 9. Mai 2020, 15:35

Warum nicht WebSockets?
nezzcarth
User
Beiträge: 998
Registriert: Samstag 16. April 2011, 12:47

Samstag 9. Mai 2020, 16:04

SSE haben genau das Featurset, das ich für die Anwendung, die mir vorschwebt, brauche, während Websockets viel umfangreicher und dadurch auch komplexer sind. Ich brauche zum Beispiel definitiv keine bidirektionale Verbindung, keine binären Daten oder beliebig viele Verbindungen. Ich vermute, du möchtest darauf hinaus, dass WebSockets viel verbreiteter sind und besser von Browsern unterstützt werden -- und das stimmt natürlich. Ich habe bisher mit keinem von beiden große Erfahrungen. Jedoch dachte ich, ich kann ja mal das ausprobieren, was eigentlich genau für diesen konkreten Anwendungsfall passen würde, auch wenn die Technologie seltener genutzt wird.
Benutzeravatar
__blackjack__
User
Beiträge: 6013
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Samstag 9. Mai 2020, 16:12

Bei https://stackoverflow.com/questions/519 ... 59#5326159 ist unter „Gotchas“ ein Verbindungslimit angegeben das vielleicht gegen SSEs spräche.
long long ago; /* in a galaxy far far away */
nezzcarth
User
Beiträge: 998
Registriert: Samstag 16. April 2011, 12:47

Samstag 9. Mai 2020, 17:55

Ja, das ist eine ernsthafte Einschränkung und die fehlende Skalierbarkeit macht es vielleicht für viele Entwickler und Anwendungszwecke unattraktiv. Ich würde es für eine Art Live-Ticker/Live-Monitoring verwenden und für diesen Zweck halte ich das nicht für so kritisch.
__deets__
User
Beiträge: 8106
Registriert: Mittwoch 14. Oktober 2015, 14:29

Samstag 9. Mai 2020, 18:26

Klingt fuer mich wie ein ziemlich verrottetes Pferd. Die einzigen echten Vorteile sind "polyfill" fuer Browser auf Plattformen, die vor 10 Jahren relevant waren. Jetzt nicht mehr. Und server-seitig sehe ich da keine grossen Potentiale fuer Vereinfachung. Die Muster zur Erzeugung von asynchronen Ereignissen sind die gleichen. Ob nun Websockets oder SSE. Entsprechend wird sich das auch nicht einfacher anfuehlen bei der Entwicklung.
Benutzeravatar
noisefloor
User
Beiträge: 2899
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: Görgeshausen
Kontaktdaten:

Samstag 9. Mai 2020, 19:41

Hallo,

wie wäre es mit Django + Channels. Das sollte auch ziemlich zukunftssicher sein. Geplant ist ja auch, dass Channels und ASGI voll in Django intergriert wird und es das ootb kann.

Gruß, noisefloor
nezzcarth
User
Beiträge: 998
Registriert: Samstag 16. April 2011, 12:47

Sonntag 10. Mai 2020, 13:32

Vielen Dank euch allen für die Antworten. Das Resümee war ja eher nicht so positiv für SSEs ;)

Ich denke, experimentieren kann ich damit trotzdem einmal. Django Channels kannte ich bisher nur vom Namen, das werde ich mir einmal näher ansehen, danke. Ansonsten würde ich als Framework (das war ja meine Ausgangsfrage) wohl mal Tornado versuchen.
Antworten