Db und Root getrennt

04/03/2013 10:43 RedKing2#16
Quote:
Originally Posted by theo1990 View Post
Ok dann frag eich mal aus neugier. Kannst du mal ein sql test machen in dem du ein query schreibst das einen join ausführt der über mindestens 2 tabellen geht und du alle spalten selectierst. Dies läst du mal von 2000 "usern" zugleich aufrufen. mIch würde interessieren wie lang der server braucht

zur not ich schreib dir das query als php und lass es in einer for schleife mal 2000^100 mal aufrufen. das wäre doch ein spaß ^^ der würde dir zusammenklappen wie ein kartenhaus (ok das beispiel ist bisschen übertrieben)



Hallo ?? was sollen das musst mich nicht als DUMM hier her stellen und vorallem beleidigen brauchst du schon mal 2 mal nicht oder kannste dich sonst nicht wehren? Du vergleichst aber gerade die USA mit luxenburg oder lichtenstein (flächenmäßig wie einwohner mäßig)!!!

Ich sag nur das je nach art und weise abgefragt wird der server in die knie geht. Ich streite nicht ab das eure server das nicht können
Hatte ich ursprünglich auf einem Test-Server gemacht.
Er sollte die gesamte DB (player) einer bestimmten Spalte aus verschiedenen Tabellen aus dem Root auf dem Test-Server übernehmen (Test-Server lokaler Server mit nur 400mb Ram, 100kb/upload durch mein Inet).
(Bsp. player --> gold, owner_id --> item etc.)

Es hat 5 Minuten gedauert bis er fertig wurde. InGame war der Server solang tot.

Es geht hier auch nicht um großen Kram, sondern um Popelabfragen.
Wenn du größere haben möchtest dann kannst du dir den Server nicht leisten.

Quote:
Originally Posted by xCPx View Post
So jetzt möchte ich aber mal wissen, bei dir beleidigen heist.
In meinen Augen bist du dumm, weil du wie gesagt zu Großes mit zu Kleinem Vergleichst.
Was ich dir sagen wollte ist, dass selbst größere Sachen wie Webshops etc, die ein vielfaches der Leistung brauchen mit teils geringerer Hardware auskommen.
99,9% aller gekauften mt2 Root Server sind eh total überdimensioniert.
Und doch unsere Server dürfen genauso Tabellen und Datenbank übergreifende Abfragen ausführen.
Eigentlich kann mir hier nichts direkt vergleichen.
Die Quests öffnen jedes mal eine neue DB Verbindung bei jeder Query, dasselbe gilt für PHP Homepages. Der Mt2 Server hat 1 Verbindung offen und die bleibt auch offen und diese wird für alle Funktionen genutzt. Sowas ist 100-mal weniger belastend, als für jede Anfrage eine neue Verbindung zu öffnen. Ich denke die selbe Art und Weise benutzen auch die Großen Webshops, da die sonst locker bei jeder neuen Db Verbindung absacken würden oder nicht?
04/03/2013 11:06 D'Arti#17
Quote:
Originally Posted by theo1990 View Post
ich denke das Gespräch artet ein wenig aus. Da du ja nichts besseres zu tun hast als andere Leute die hier DISKUTIEREN (Metin2 PServer - Discussions / Questions) zu beleiden. Du willst mich eines besseren belehren? Ok gerne aber dann wahre wenigstens dein Ton und bleib locker oder musst du jemanden was beweisen? Vllt hatte ich nicht recht, ok das kommt vor, jedoch beleidige ich dich nicht direkt und wenn du das so nicht akzeptieren kannst, bitte dann melde ich halt den Beitrag (was ich nun auch getan habe).

Aso und noch was, wenn jemand etwas nicht weiß oder es NICHT besser weiß heißt das nicht gleich das die Person dumm ist, sie weiß es eben nicht besser. Und wenn du das jetzt gelesen hast denk mal nach ob jemand der ja so dumm ist sowas schreiben würde.
Ich habe mir mal den ganzen Thread durchgelesen ... wieso fängst du sofort an zu heulen als CP dich dumm genannt hat?
Sogesehen bist du ja dumm weil du einfach seine Aussagen nicht verstehst und nicht das was er dir erklären will, du denkst dir weiterhin dein Teil und fragst dich dann wieso er dich dumm nennt.
Sorry aber sollche Menschen sind dumm.
04/03/2013 11:59 theo1990#18
Quote:
Hatte ich ursprünglich auf einem Test-Server gemacht.
Er sollte die gesamte DB (player) einer bestimmten Spalte aus verschiedenen Tabellen aus dem Root auf dem Test-Server übernehmen (Test-Server lokaler Server mit nur 400mb Ram, 100kb/upload durch mein Inet).
(Bsp. player --> gold, owner_id --> item etc.)

Es hat 5 Minuten gedauert bis er fertig wurde. InGame war der Server solang tot.

Es geht hier auch nicht um großen Kram, sondern um Popelabfragen.
Wenn du größere haben möchtest dann kannst du dir den Server nicht leisten.
ok also heißt dass das der server das so direkt nicht geschafft hat?

Quote:
Ich habe mir mal den ganzen Thread durchgelesen ... wieso fängst du sofort an zu heulen als CP dich dumm genannt hat?
Sogesehen bist du ja dumm weil du einfach seine Aussagen nicht verstehst und nicht das was er dir erklären will, du denkst dir weiterhin dein Teil und fragst dich dann wieso er dich dumm nennt.
Sorry aber sollche Menschen sind dumm.
laber rababer....aber hauptsache sich eingemischt. Egal ihr seit es nicht wert echt nicht. Schreib mal was qualifiziertes über db Server wenn du schon hier deine sülze abgibst
04/03/2013 12:14 vıo#19
sowas liebe ich auf epvp :awesome:

# zur Thematik zurück..
xCPx hat Recht, es hat keienrlei Auswirkung bzw einen geringere Auswirkung durch Quest's mit Sql abfragen.
04/03/2013 12:20 theo1990#20
gut also ist die auslagerung der db nur ein sicherheitsaspekt da man diese komplett von außen abschirmen könnte und nur den verkehr zum game freigibt. Oder man mach noch eine db für die hp auf dem db server
04/03/2013 14:17 D'Arti#21
Quote:
Originally Posted by theo1990 View Post
laber rababer....aber hauptsache sich eingemischt. Egal ihr seit es nicht wert echt nicht. Schreib mal was qualifiziertes über db Server wenn du schon hier deine sülze abgibst
Heul nicht rum, das ist kein mischen sondern das einbringen einer anderen Perspektive damit dir vielleicht klar wird das du einfach nicht verstehst was CP dir sagen wird.
Aber hey, macht eh kein Sinn da meine Worte ebenfalls an dir vorbei fliegen.
Les dir einfach nochmal durch was CP geschrieben hat, dann hast du was qualifiziertes über DB-Server gelesen. ;)
04/03/2013 16:40 theo1990#22
omg lass es doch sein? ist das dein Bruder ? oder wieso geilst du dich jetzt dran auf mir gehts nit um den cp der ist mir so was von egal genau wie du. Mir gehts nur nicht ab wenn leute die mich nicht kennen dumm nennen.

Quote:
Les dir einfach nochmal durch was CP geschrieben hat, dann hast du was qualifiziertes über DB-Server gelesen.
ich bin da anderer Meinung und wenn es euch sie nicht passt dann habt ihr halt pech gehabt.
04/03/2013 17:41 RedKing2#23
Quote:
Originally Posted by theo1990 View Post
ok also heißt dass das der server das so direkt nicht geschafft hat?
Er hat es geschafft fertig zu werden in 5 Minuten, doch in der Zwischenzeit war der Server down.
04/03/2013 17:58 Mashkin#24
Drei Faktoren:
  • Resourcen
Der Gameserver braucht hauptsächlich CPU und RAM.


Die Datenbank braucht einen schnellen Datenspeicher ("Festplatte"), jedoch können speicherbasierte Caches die Performance erhöhen. Das ist jedoch bei Metin2 nicht so sinnvoll, da kaum identische Queries wiederholt werden und überwiegend in die Datenbank geschrieben wird.
Die Prototypen zum Beispiel (item_proto, mob_proto, shop, banword etc.) werden einmalig beim Serverstart und ansonsten nur bei /reload aus der Datenbank geladen.


Fazit: Eine (gute) SSD mit guter Schreibgeschwindigkeit wirkt Wunder für Datenbankserver.
  • Latenz
Wenn man Datenbank und Gameserver auf unterschiedlichen Systemen unterbringt verursacht man Latenz, d.h. die Zeitverzögerung zwischen beiden Systemen (umgangssprachlich als Ping-Zeit bekannt).
Egal wie schnell Gameserver oder Datenbank arbeiten können - die Ausführungszeit für jede Query ist nach unten durch die Latenz der Netzwerkverbindung begrenzt.


Fazit: Wenn möglich die Server nah beieinander unterbringen. Einige Hoster bieten Optionen für schnelle interne Verbindungen. Dabei wird oft auch der interne Traffic nicht angerechnet.
  • Stabilität
Verschiedene Hosts für die Komponenten Datenbank und Gameserver machen sie unabhängig voneinander. Fällt ein System aus, ist das andere nicht direkt davon betroffen. Bei Metin2 gilt dies nur in eine Richtung, da der Gameserver quasi auf die Datenbank angewiesen ist.