menu

Forum

19. Mai 2012, 16:47:31 *

 
Willkommen Gast. Bitte einloggen oder registrieren.

Einloggen mit Benutzername, Passwort und Sitzungslänge
 
 


  Seiten: 1
  Drucken  
josh
Newbie
*
Beiträge: 7

PHP Server
am: 21. Dezember 2008, 17:32:33
Hi Lutz,

Besteht eigentlich eine Doku über die Events, welche zwischen Clients und Server ausgetauscht werden? Falls ja, hätte ich Interesse, einen Server in PHP zu schreiben. (zentraler Server, linuxfähig, usw.)

Grüsse,
Josh

PS: Idee für den Server: Areas, die definieren, wo eine Chat-Mitteilung gehört werden kann, z.B. nur innerhalb des gleichen Raumes innerhalb eines Gebäudes.
Lutz
Administrator
Full Member
*****
Beiträge: 219

Re: PHP Server
Antworten #1 am: 21. Dezember 2008, 20:58:34
Ein auf PHP basierender Server wäre eigentlich Ideal !

Dafür müsste der Client angepasst werden. Im Moment werden keine Strings verschickt sondern Datentypen die von Shockwave unterstützt werden (Vectoren, Transformationen, Arrays ... ). Das müsste dann auf Strings umgestellt werden damit sich das Ganze dann mit einem Php-Server verträgt.

Für die Bewegungen werden im Moment von jedem Client 5 Nachrichten pro Sekunde an den Host verschickt, dort gesammelt und gebündelt um dann an die Clients 5 mal pro Sekunde zurückgeschickt zu werden.

Vermutlich könnte man diesen Vorgang auf einem Php-Server mit weniger Latenz hinbekommen (kenne mich da aber nicht genug aus).

Vielleicht sollten wir das mal offlist besprechen?

Grüsse!
Lutz


josh
Newbie
*
Beiträge: 7

Re: PHP Server
Antworten #2 am: 22. Dezember 2008, 22:14:04
Hi Lutz,

Klar, können wir gerne mal besprechen, allenfalls via SkypeChat? Aber nicht mehr vor Sylvester... :-)

Wir haben einmal einen Chatserver in PHP geschrieben (push variante, also mit Socketverbindung, die sicher performanter ist, als ein reiner POP-Server).

Die Shockwave-Datentypen können vielleicht serialisiert und komprimiert werden, bevor sie verschickt werden, so könnte ein Grossteil der Client-Logik erhalten bleiben.

Grüsse,
Josh
josh
Newbie
*
Beiträge: 7

Re: PHP Server
Antworten #3 am: 08. Januar 2009, 22:07:47
Also es gibt ja grundsätzlich 2 Varianten: Push- oder Pull-Server.

Beim Push Server wird mittels Sockets eine ständige Verbindung zwischen Server und Clients offen gehalten. Die Performance ist deutlich besser. Würde der Biont-Client Sockets unterstützen?

Beim Pull-Server ruft der Biont-Client in regelmässigen Abständen eine URL (inkl Parametern) vom Server ab und erhält dann Infos als Antwort. Dabei ist die Performance schlechter als beim Push-Server und somit die Userzahl begrenzt. Aber dafür muss auf dem Server-PC kein Script dauernd laufen lassen. Gerade bei Hosting Anbietern ist ein ständig laufendes PHP-Skript oftmals nicht erlaubt, somit wäre ein Pull-Server hier eher einfacher zu verwenden.

Was meinst du dazu?

Grüsse,
Josh
Lutz
Administrator
Full Member
*****
Beiträge: 219

Re: PHP Server
Antworten #4 am: 09. Januar 2009, 05:41:57
Ich denke das eine Socketverbindung die einzige Möglichkeit wäre die Daten, die bei einem Multiplayergame zusammenkommen, zu bewältigen. Wobei mir hier noch kein Beispiel bekannt ist, das mit PHP umgesetzt worden ist. Wenn du da ein Beispiel kennst, bitte einen Link.

Vor ein paar Tagen wurde der "openSMUS" Server als OpenSource zu Verfügung gestellt. Ich denke, dass dieses Teil eine sehr sinnvolle Lösung für Mulitplayer Spiele sein wird.

Zu finden ist das Projekt hier:
http://opensmus.sf.net

Bzw. der Link auf das Sourceforge Projekt:
http://sourceforge.net/projects/opensmus/

Ich hatte leider noch keine Zeit damit zu experimentieren aber es ist auf Shockwave zugeschnitten und scheint TCP/IP und UDP zu unterstützen und eben vorallem auch auf Unix bzw. Linux zu laufen.

Mich würde noch interessieren, wie sinnvoll es deiner Meinung nach ist, so einen Server mit php zu realisieren.

Grüsse!

josh
Newbie
*
Beiträge: 7

Re: PHP Server
Antworten #5 am: 09. Januar 2009, 22:31:00
Wir haben bereits einen PHP Socket-Server entwickelt, der inzwischen produktiv seit gut 5 Jahren in einem Chat läuft.

Ich kenne mich mit Shockwave leider nicht aus, aber ich vermute mal, dass ein Server, der speziell auf die Shockwave API ausgerichtet ist, ziemlich sicher mehr Sinn macht als ein PHP Server. Daher ist openSmus bestimmt interessant.

Aber ich hab mir überlegt, die Biont Umgebung als Ergänzung zum bestehenden Chat einzusetzen. Nur leider ist der Chat-Teil im Biont noch nicht sehr ausgereift; aber was nicht ist, kann ja vielleicht noch werden ;-) Und es eilt ja nicht.

Viele Grüsse und einen schönen Abend!

Josh



  Seiten: 1
  Drucken