• Gefällt mir
Softwarearchitektur eines modernen Onlinespieles - PHPUnconference 2013
Nächste SlideShare
Wird geladen in ...5
×

Softwarearchitektur eines modernen Onlinespieles - PHPUnconference 2013

  • 319 Views
Hochgeladen am

 

  • Full Name Full Name Comment goes here.
    Sind Sie sicher, dass Sie...
    Ihre Nachricht erscheint hier
    Hinterlassen Sie den ersten Kommentar
Keine Downloads

Views

Gesamtviews
319
Bei Slideshare
0
Aus Einbettungen
0
Anzahl an Einbettungen
1

Aktionen

Geteilt
Downloads
2
Kommentare
0
Gefällt mir
1

Einbettungen 0

No embeds

Inhalte melden

Als unangemessen gemeldet Als unangemessen melden
Als unangemessen melden

Wählen Sie Ihren Grund, warum Sie diese Präsentation als unangemessen melden.

Löschen
    No notes for slide

Transcript

  • 1. • Crossplatform – Browser, Android, Ios • Echtzeit – Das Spiel läuft unaufhörlich weiter – Schnelle Information über Statusänderungen • Multiplayer – Spieler können einander beeinflussen – Schnelle Information über Beeinflussungen
  • 2. DB DB DB Globaler Redis Pub-Sub Websocket vNodeJS Redis Push-Pull Webserver PHP WorkerPHP WorkerPHP Worker vNodeJS Redis Push-Pull Webserver PHP WorkerPHP WorkerPHP Worker
  • 3. Worker Dispatcher Controller Repository Domain ObjekteDomain Service Redis Event Dispatcher Redis DB Views
  • 4. • Daemon – Abarbeiten zeitgesteuerter Spielereignisse – Arbeitet nicht selbst, erstellt Messages • Cronjobs – Werden über den Daemon abgehandelt
  • 5. • Sockets ersetzen Sessions • Zusätzliche Daten am Socket – Connection ID, Player ID, Spielwelt, Etc. – Gesetzt durch Messages von PHP – Zusätzliche Indizes • In Messages zwischen Node & PHP enthalten – Node  PHP: alle am senden Socket gespeicherte Daten – PHP  Node: eine Kombination der Daten auf die alle verbundenen Sockets gematcht werden • Weiterleitung passender Messages – Interne Daten werden entfernt
  • 6. • API-Test – Beschreibung – Eingehender Nachricht – Ausgehende Nachrichten • Basierend auf Fixtures • Nur auf PHP-Ebene • Rollback nach jedem Test • Dienen gleichzeitig als Dokumentation – Dokumentation ist zwangsweise immer aktuell