Frage zur Skalierbarkeit (für Fortgeschrittene)

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Jan.O
User
Beiträge: 61
Registriert: Samstag 26. April 2008, 00:32

Sonntag 27. April 2008, 02:47

aber warum daten -> datei -> ram -> website und nicht daten -> ram -> website?
thelittlebug
User
Beiträge: 188
Registriert: Donnerstag 20. Juli 2006, 20:46
Wohnort: Wien
Kontaktdaten:

Sonntag 27. April 2008, 03:11

wenn du eine lösung kennst, warum hast du sie noch nicht implementiert? ;)

lgherby
Jan.O
User
Beiträge: 61
Registriert: Samstag 26. April 2008, 00:32

Sonntag 27. April 2008, 03:15

auf die lösung mit memcached bin ich nach meinem ersten beitrag gestoßen.

Aber danke für die mit der datei, werde es mal testen/benchmarken
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Sonntag 27. April 2008, 08:30

Ich würde prinzipiell das Pollens anzweifeln. Statt das jeder Client periodisch nachfragt, ob sich etwas getan hat, sollten sie nur informiert werden, wenn wirklich etwas passiert ist. Das reduziert IMHO stärker die Last auf dem System als Versuche, SQL-Queries zu cachen.

HTTP ist leider keine gute Basis für derartige Events. Unter dem Stichwort COMET werden entsprechende Workarounds zusammengefasst. Eine Alternative ist das AMF-basierte Remote-Objekt-Protokoll von Flash. Der Server dazu ist mitlerweile quelloffen, allerdings ein Java-Programm.

Dieses Vorgehen macht allerdings die 1-Request-Share-Nothing datenbank-zentrische Programmierung unmöglich und dauerhaft laufende Server machen die Entwicklung deutlich einfacher. Vielleicht habe ich zu lange Java gemacht, doch das würde ich hier eher in Erwägung ziehenals PHP oder Python. Möglicherweise wäre Jython eine gute Wahl, um Spiellogik zu scripten.

Ich fände auch spannend mal zu prüfen, wie ein klassisches Setup mit Django und FastCGI oder Modpython plus Apache gegen Jython mit modjy auf einem Glassfish-Server so besteht. Allerdings würde diese Architektur wieder die klassische 1-RSN-Situation simulieren.

Stefan
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Sonntag 27. April 2008, 10:59

2500 Zeilen pro Sekunde sollten nun wirklich kein Problem für ein DBMS sein, behaupte ich mal frech.
Jan.O
User
Beiträge: 61
Registriert: Samstag 26. April 2008, 00:32

Sonntag 27. April 2008, 14:07

sma hat geschrieben:Ich würde prinzipiell das Pollens anzweifeln. Statt das jeder Client periodisch nachfragt, ob sich etwas getan hat, sollten sie nur informiert werden, wenn wirklich etwas passiert ist. Das reduziert IMHO stärker die Last auf dem System als Versuche, SQL-Queries zu cachen.
Erstmal danke für die ganzen Tipps.
Y0Gi hat geschrieben:2500 Zeilen pro Sekunde sollten nun wirklich kein Problem für ein DBMS sein, behaupte ich mal frech.
Die rechnung bezog sich ja auch nur auf einen kleinenteil der seite
Antworten