Core Aufteilung - Frage

07/27/2014 13:44 Toxiko#1
Mich beschäftigt schon Zeit längerer Zeit die Frage:
Was läuft eigentlich stabiler & flüssiger....
Bsp 4 Cores... oder 6 Cores

Wie viele Maps sollten pro Core drauf sein ?
Wen man davon ausgeht das sie viele user etc aushalten
sollen....


Ich freue mich auf eure Antworten.


mit Freundlichen grüßen

Toxiko
07/27/2014 16:23 Mashkin#2
Ich denke aus persönlicher Erfahurng, dass man mit vier Cores pro Channel quasi alle zu erwartenden Usermenge packen wird, die ein PServer zu Gesicht bekommt - womöglich auch noch mehr.
Ob ein Core abstürzt oder nicht ist viel mehr abhängig von Bugs im Code, die es leider immer wieder mal gibt.
Zu bedenken ist dann, welche und wie viele Maps - also auch wie viele Spieler - bei so einem Absturz direkt betroffen sind.

Die Lastverteilung würde ich generell nach erwartetem Spieleraufkommen vornehmen. Jedes Reich (Map1 + Map2) auf einen Core und alle übrigen Maps werden dannauf den vierten Core und die vorherigen drei verteilt

Für die Performance gibt es andere, wesentliche Faktoren.
Wie man sicher sieht, erzeugen die Cores nur eine sehr geringe Last auf einem vernünftigen System (200-400MB RAM und mittlere CPU-Auslastung von unter 10% auf einem Xeon Quad Core).
Viel entscheidender ist die Datenhaltung - die Optimierung von MySQL hat einen entscheidenden Einfluss auf die Performance.
Besonders im Fokus sollten dabei liegen:
  • Indizes zum schnellen Finden von Datensätzen (player/item/quest-Tabellen)
  • schneller und/oder separater Speicher für log-Datenbank (wenn man viel Logging betreibt)
  • Platzierung der syslog-Dateien (abhängig von der Core-Revision und den Logging-Einstellungen)
  • evtl. Entfernung einiger unnötiger Logeinträge im Core (per Source Code oder Binary Diff) wie z.B. Switch-Vorgänge (v.a. bei Verwendung eines Switch-Bots!)
  • fast vollständige Ausschöpfung des verfügbaren RAM durch MySQL (Google benutzen); ein Server mit mehr RAM bringt an sich noch keine großen Performance-Verbesserungen
07/27/2014 17:20 Toxiko#3
Danke für die genaue Antwort :) !

mit Freundlichen grüßen

Toxiko
07/27/2014 22:49 [-Lee-]#4
Quote:
Originally Posted by Mashkin View Post
Ich denke aus persönlicher Erfahurng, dass man mit vier Cores pro Channel quasi alle zu erwartenden Usermenge packen wird, die ein PServer zu Gesicht bekommt - womöglich auch noch mehr.
Ob ein Core abstürzt oder nicht ist viel mehr abhängig von Bugs im Code, die es leider immer wieder mal gibt.
Zu bedenken ist dann, welche und wie viele Maps - also auch wie viele Spieler - bei so einem Absturz direkt betroffen sind.

Die Lastverteilung würde ich generell nach erwartetem Spieleraufkommen vornehmen. Jedes Reich (Map1 + Map2) auf einen Core und alle übrigen Maps werden dannauf den vierten Core und die vorherigen drei verteilt

Für die Performance gibt es andere, wesentliche Faktoren.
Wie man sicher sieht, erzeugen die Cores nur eine sehr geringe Last auf einem vernünftigen System (200-400MB RAM und mittlere CPU-Auslastung von unter 10% auf einem Xeon Quad Core).
Viel entscheidender ist die Datenhaltung - die Optimierung von MySQL hat einen entscheidenden Einfluss auf die Performance.
Besonders im Fokus sollten dabei liegen:
  • Indizes zum schnellen Finden von Datensätzen (player/item/quest-Tabellen)
  • schneller und/oder separater Speicher für log-Datenbank (wenn man viel Logging betreibt)
  • Platzierung der syslog-Dateien (abhängig von der Core-Revision und den Logging-Einstellungen)
  • evtl. Entfernung einiger unnötiger Logeinträge im Core (per Source Code oder Binary Diff) wie z.B. Switch-Vorgänge (v.a. bei Verwendung eines Switch-Bots!)
  • fast vollständige Ausschöpfung des verfügbaren RAM durch MySQL (Google benutzen); ein Server mit mehr RAM bringt an sich noch keine großen Performance-Verbesserungen
An der Stelle möchte ich echt mal sagen wie genial ich deine Arbeit bzw deine Antworten hier immer finde. Einer der wenigen User der einem wirklich hilft. TOP!