• Hey,

    ich würde gerne wissen, wie man so berechnen kann, wie viel Leistung der Server braucht für gewisse User.

    Nehmen wir an, ich betreibe eine Website oder ein Forum (Kein Retro) und dort sind durschnittlich 1000 User aktiv, wie gut muss der Server
    sein? was am Server ist für sowas wichtig. Ram? Anbindung? CPU? Arbeitspeicher? Damit es nicht laggt.

    lg

    :P

  • ja gut linux ist schneller und schon ein wenig besser als windows..
    aber php,webserver und datenbank mit 2gb ram und 2 kernen? da bezweifle ich das der server im dauerbetrieb über monate hinweg standhaft 10k requests pro sekunde schafft (ram zu knapp,cpu sollte grade noch so gehen)

  • variiert nach der anwendung und der programmierung. Für durchschnittlich 15-30 grosse anfragen via http pro sekunde reichen eigentlich (php,iis,sql) 4gb ram und zur sicherheit 4 kerne. 4gb ram und 2kerne gehen aber auch.

    4 GB RAM?
    Was möchtest du denn für riesige Webscripts betreiben?
    Bei 15-30 Anfragen ist 1 GB RAM mehr als zuviel. Jedoch macht es Sinn, besonders für dynamische Webseiten deutlich mehr CPU Kerne zu reservieren.

    Als kleines Beispiel:
    Habbo.mn: 2 GB, Intel Atom 2 Kerner, durchschnittlich (auf 24 Stunden gesehen) 600-800 Seitenaufrufe die Sekunde. Eine große Anzahl von Seitenaufrufen wurden durch Google Analytics nicht gewertet, weshalb ihr davon ausgehen könnt, dass die Werte trotzdem noch deutlich über den von mir genannten Werten liegen. Keine Probleme.


    Pauschal kann man da keine konkreten Aussagen treffen:
    Wenn du eine Seite wie Youtube betreiben möchtest, auf dem du z.B. Videos streamst brauchst du deutlich mehr Anbindung als bei einer kleinen Webseite mit drei Bildern drauf. Für den Anfang sollten 100 MBit ausreichend sein. Anderenfalls kannst du nachträglich noch aufrüsten.


    :!: FileXs #Lieblingsmod. :!:
    ... still making kids cry since 2015.

    2 Mal editiert, zuletzt von Aapoh (16. September 2015 um 19:39) aus folgendem Grund: Daten aufgrund von Google Analytics aktualisiert.

  • ich habe derzeit eine gut besucht webseite bei der im durchschnitt pro anfrage am tag 0,2megabyte daten von dem sql server zurückgegeben werden und noch caching am sql server aktiviert. das php script das aufgerufen wird ist ebenfalls sehr lang besser gesagt 300 zeilen mit vielen if abfragen usw. ab und zu wird der arbeitsspeicher dann doch knapp (andere webseiten laufen auchnoch drauf). das ganze läuft bei mir derzeit auf windows. aber unter anderen vorraussetzungen kann das resultat natürlich anders aussehen und @aapoh seine aussage zutreffen..

  • Im durchschnitt pro anfrage am tag 0,2megabyte daten von dem sql server zurückgegeben werden[..]


    Gut, da kann ich mit meinen 600 GB pro Tag (42 MB die Sekunde outgoing) nicht mithalten. Da wurde fast die Hälfte der Anbindung des Datenbankservers durch den SQL Outgoing Traffic "blockiert". Bei 42 MB reicht keine 100 Mbit Verbindung mehr.

    Ab gewissen Datenbankgrößen sollte man so oder so die Software physikalisch trennen. Ich habe bis dato immer die Erfahrung gemacht, dass du sehr gut Webseiten auf Servern betreiben kannst, die nur sehr wenig RAM besitzen und dafür starke CPUs haben. Datenbankserver hingengen müssen deutlich teurer sein: gute Festplatten (besser SSDs) mit schnellem RAM (egal ob ECC oder nicht) und leistungsstarker CPU. Eventuell kannst du auch einfach versuchen die Datenbanken komplett in den RAM auszulagern und in einem Cluster mit einem zweiten Server einzurichten, auf dem die Daten zeitverzögert auf einem persistenten Speichermedium gebannt werden.


    :!: FileXs #Lieblingsmod. :!:
    ... still making kids cry since 2015.

  • bei grösseren datenbanksystemen und hohen "verbrauch" lohnt sich sicherlich ein mysql cluster. Aber ssd ist besonders im koordinationsserver bzhw "verteiler" wichtig schätze ich mal weil der ja die anfragen zu den datenservern leitet (insofern insert oder update) und gleichzeitig bei select nen server finden soll der nicht allzu ausgelastet ist um die anfrage dahin zu senden und zurück zu bringen. Hab noch nie was mit nem sql cluster anfangen können da es sich in meinem fall noch nicht lohnt xd

    Ausserdam sage ich immer so 2/3 der verfügbaren ressourcen dürfen ausgenutzt sein im normalbetrieb und der rest ist eben für hochbetrieb reserviert (der vermutlich nicht allzu viel mehr als der normalbetrieb sein wird)

  • Ich musste durchaus schon mit SQL Clustern arbeiten, die mehrere TB an Daten pro Tag schreiben mussten. Sinn macht es, direkt zu versuchen Inserts zu cachen bevor man diese eventuell an den Datenbankserver schickt, sofern die Anwendung das zulässt. Wenn du ein Retro hast, was z.B. 1000 User gleichzeitig on hat, macht das ganze durchaus Sinn, alle 30 Sekunden erst die Chatlogs in den SQL Server zu flushen. Im alten MN habe ich die Chatlogs auch erst im Intervall von 10 Sekunden die Chatlogs flushen lassen. Somit verhinderst du effektiv Tablelocks und wenn du die Inserts richtig strukturiert (Eine einfachen "INSERT INTO[..];INSERT INTO[..]" ne Menge Rechenleistung.

    Solange du die Server richtig konfigurierst und die Daten im Speicher statt auf der SSD auslagerst, wirst du besonders was die Geschwindigkeit angeht, deutliche Beränderungen bemerken. Setzt aber vorraus, dass wenn du die gesamte SQL Instanz im RAM betreiben möchtest, du eine zweite Instanz, oder besser, Server hast, die/der diese Daten noch einmal wirklich fest schreibt. Hat den Vorteil, dass die Festplatten nicht die schnellsten sein müssen. 2 TB Festplatten kosten doch inzwischen nichts mehr. Besonders 5200 rpm Platten. Was du für Performancegewinne mit Arbeitsspeicher im Vergleich zur SSD hast, rechtfertigt für mich sogar den Aufpreis für die ganzen RAM Riegel.

    Trotzalledem: Back to Topic. Wenn du Techtalk starten möchtest, macht doch einen Thread dafür auf :P


    :!: FileXs #Lieblingsmod. :!:
    ... still making kids cry since 2015.

  • danke, besonders an aapo!
    Aber was ich sagen möchte ist, dass ich vorerst die DB nicht trennen werde/möchte, da mir da erstmal die Erfahrung fehlt, möchte erstmal den Windows Server gut konfigurieren, denke werde nginx als Webserver nehmen und dann ne MySQL DB hosten und je nachdem wie es läuft immerwieder verbessern und ggf einen zweiten Server nehmen und dort die DB.

    :P

  • obs nginx für windows gibt ist mir nicht bekannt. Ich glaube eher nicht. Ich kann iis empfehlen. Du kannst mariadb als sql server verwenden. Gut konfiguriert ist mariadb stabil und schnell :) ich glaube nicht das sich für den anfang schon nen komplettes servernetz lohnt vondaher ists ja okay alles auf einem / db server extern zu machen :D

  • nginx als Webserver

    Meiner Erfahrung nach, ist Nginx als Webserver auf Windows absoluter Müll. Windows hat zum Beispiel einen Algorithmus mit dem die Informationen im Arbeitsspeicher zufällig durcheinander gewürfelt werden. Mit diesem steht Nginx in Konflikt und kann so wichtigte Cachingfunktionen nicht anbieten. Abgesehen davon, wurde Nginx nicht für Windows entwickelt, was man unteranderem an der fehlerhaften Cachingfunktion erkennt.

    Unter Windows würde ich dir zu IIS raten. Abgesehen davon, musst du dir dann auch nicht die Mühe machen, Nginx als Service einzutragen, da du erst mit Nginx als Service die maximale Leistung erwarten kannst. Nginx mag auf Unix Systemen (wie z.B. Linux oder BSD) Sinn machen... Aber unter Windows eher weniger. Ansonsten gibts an deinem Setup nichts zu bemängeln.


    :!: FileXs #Lieblingsmod. :!:
    ... still making kids cry since 2015.

  • hier mal nen paar daten die nicht geschätzt sondern genau sind.
    analytics von nem betaprojekt:

    http://i.imgur.com/bZbWh9Z.png hier siehst du was der sql server geleistet hat

    http://i.imgur.com/TeGNF2E.png hier siehst du was der sql server derzeit (inkl cache) schluckt

    die webseite lädt fertig in 0,1 sekunden (gemessen von meinem rechner->browser zuhause also schon realistisch) mit nicht grade wenigen daten. ich muss zugeben der server wurde locker 15 tage nicht benutzt wegen wartungsarbeiten aber kannst dir mit den screens schon so ungefähr vorstellen wieviel du einplanen solltest. insofern du alles gut konfigurierst und cf verwendest kannst du dich sehr effektiv ebenfalls von torshammer angriffen schützen und somit verhinderst du unter anderem das die php-cgi voll läuft. :D

  • Sieht mir jetzt nicht nach einer besonders großen Datenbank und erst recht nicht nach einer guten Konfiguration aus.

    4496943 Verbindungen?!? In 22 Tagen? 204407 pro Tag?!? 8517 pro Stunde?!? 142 pro Minute?!? Du solltest mal ergoogeln, was alleine der Verbindungsaufbau so an Zeit und Rechenleistung schluckt. Da muss unbedingt was dran gedreht werden. 2 Seitenaufrufe pro Sekunde sind keine große Belastung für einen Server. Das sollte er auch mit kompletten Standardeinstellungen problemlos lösen können, sofern er nicht auf einem Taschenrechner betrieben wird.

    PS.: Laut meiner Berechnungen, aufgrund der von dir gezeigten Statistik, werden pro Verbindung (die ja auch mehrere Querys ausgeführt haben kann) 0,00177978 MB an Daten geschickt. Das sind 112 mal weniger Daten als von dir in deinem vorherigen Post angegeben.


    :!: FileXs #Lieblingsmod. :!:
    ... still making kids cry since 2015.

  • Hi,
    danke für eure Meldungen, besonders an aapo.

    Ich habe nun 2 fragen noch! Was ich noch anmerken möchte ist, dass ich kein Retro Projekt o.ä vorhabe sondern eine Seite mit Forum zu einem allgemeinen Thema.

    1) Ich suche einen Server Hoster außerhalb der EU; am besten in Russland o.ä, warum in frage 2.
    Mein Favorit Hoster derzeit wäre http://www.hostkey.com/vps/ und hier ne frage. Wofür ist es wichtig, dass man viel Traffic hat? Mir ist schon klar,
    wofür das ungefähr da ist, trotzdem ist ja bei vielen Hostern Unlimited Traffic und hier hat man Standart 1TB und für jeden TB zahlt man 5€ bei meiner Konfiguration. Ist der Traffic wirklich wichtig?
    Auch, wenn man schon einige Besucher hat? Auch wichtig für DDOS? Oder verwechsle ich das mit der Anbindung?

    2) Ich möchte KEIN IMPRESSUM mit meinen Daten angeben, aus gutem Grund. Nichts illegales aber ich möchte es trotzdem nicht. Mein Projekt hat etwas mit Meinungsfreiheit zutun usw,
    trzd nix illegales, kein Nazi Forum oder sowas, falls ihr denkt. Darum wollte ich eig nen Offshore Hoster, da ich gelesen habe, dass man bei fehlendem oder fake Impressum gleich mal im 5 stelligen Bereich zahlt, da aber Offshore meistens sehr teuer ist, wollt ich jetzt nen Russland Server. (Falls ihr noch andere gute Ausländische Hoster kennt, meldet euch!). Hat villeicht jemand von euch Ahnung, wie es rechtlich aussieht? Ich meine ein Fake Impressum zb fällt ja keinem auf und daher wird auch keiner klagen, denk ich mal. Was kann wirklich passieren bei fehlendem oder fake impressum? Bin ich sicherer bei nem russischen Server?

    Ich weiß, könnt ihr vllt nicht wissen aber fragen kostet ja nix. EInige Retrobesitzer haben ja auch kein Impressum aber bei nem größeren Forum zb ist die Chance schon größer, dass ein Neider klagt...

    lg

    :P

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!