"We are back" « oc.at

Operation: Server-Upgrade

mat 01.08.2016 - 12:29 50446 107 Thread rating
Posts

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25496
Ja, es war nötig sonst hätte ich es mir äußerst gerne gespart. ;)

4 GB waren für das Base-System, die Webapplikation und die DB mit Abstand zu wenig für 8 Kerne. Das wussten wir damals nicht, aber jetzt sind wir umso schlauer. Die Anzahl der Verbindungen über den Apache und die DB sind zeitweise sehr hoch bei uns, bis zu 200 können es problemlos sein. Natürlich sind Bots wie zB von Google, die oc.at 24/7 durchkämmen, ebenfalls an diesen Verbindungen beteiligt, aber das macht unterm Strich keinen Unterschied, weil das muss funktionieren. Für zuviele Verbindungen gibt es zwei Strategien: Entweder man sperrt den Server ab einer gewissen Anzahl an Verbindungen ab - first come, first serve - oder man erhöht die Verbindungen solange, dass der Server swapped (Arbeitsspeicher auf die Disks auslagert); unabhängig von Caching-Methoden wie Varnish und lokalen Cache-Layern. Nummer 2 ist ganz allgemein der Weg, den man gehen sollte, weil besser langsam als gleich eine Fehlermeldung. Und wenn es dann zu oft langsam wird, was bei uns der Fall war, dann muss entweder die Software optimiert werden (zB Verlagerung von [mehr] Requests auf einen Varnish, am besten über eine F5 innerhalb der lokalen Infrastruktur) oder ein Hardware-Upgrade wird nötig.

Einer der Hauptgründe, die momentan noch gegen einen Varnish sprechen (außer den Kosten), beruht auf der Tatsache, dass doch anders als bei irgendwelchen Tageszeitungen sehr viel Load von eingeloggten Usern kommt. Dieser individuelle Traffic ist deutlich schwieriger zu Cachen. Obendrein hatten wir schon eine ganze Weile das Problem, dass MySQL nicht ausreichend optimiert werden konnte, weil wir nicht genügend Speicher für den Query-Cache bereitstellen konnten. Dadurch habe ich schon länger mit einem RAM-Upgrade geliebäugelt. :)

Natürlich gibt es durch den größeren RAM auch einige Vorteile für die Webapplikation: Wer zB viele Private Messages hat (so wie ich), der muss nicht mehr bis zu 5 Sekunden warten, um sie aufzulisten. Dank größerem Sort-Buffer fluscht das jetzt ohne Probleme. Außerdem haben wir jetzt viel Potenzial für memcached-Implementierungen, die ich gerne machen würde, um die DB zusätzlich zu entlasten (wir haben sehr viele Single-Queries ... ok, prepared Statements wäre auch ganz nett ;)).

Last but not least war ausschlaggebend, dass ich zwei relativ günstige Opteron 6276 auf egay gefunden habe, denen ich einfach nicht widerstehen konnte. Dadurch mussten der RAM ohnehin neu dimensioniert werden, weil für 32 Cores jeder Core entsprechend mit RAM bedacht werden muss inklusive Base-System und Datenbank mit Query-Caching.

Also hätten wir ganz prinzipiell nur 8 oder vielleicht 16 GB mit 8 Kernen benötigt. Bei 32 Kernen hätte ich schon zu 32 GB tendiert. Wie ist es dann zu den 64 GB gekommen? Tja, wir haben das intern diskutiert und dann hat sich ein Engel gemeldet, dem wir jetzt das RAM-Wonderland zu verdanken haben. :cool:

Unterm Strich war als zuviel Motivation und noch mehr Glück an diesem Upgrade beteiligt. Und das OS hätten wir natürlich sowieso updaten müssen, wir waren noch auf Ubuntu Server 10.04 LTS.

xtrm

social assassin
Avatar
Registered: Jul 2002
Location:
Posts: 12122
Zitat von Bogus
bin wohl der erste dem es auffällt: mat muss nen CRT mit sich rumschleppen?
hat keiner nen 30,- euro tft den er für'n geek package spenden würde? ;)
Du meinst wohl, er DARF in den Genuss kommen, mit einem CRT zu arbeiten.

Bogus

C64 Generation
Avatar
Registered: Mar 2006
Location: Graz
Posts: 3170
Zitat von xtrm
Du meinst wohl, er DARF in den Genuss kommen, mit einem CRT zu arbeiten.

darf? achso, macht man sowas heutzutage schon über's smartphone? :D :scnr:

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25496
Hehe, das Foto ist ur alt, damals beim Serverausfall vor vielen Jahren entstanden:

Crash Override

BOfH
Registered: Jun 2005
Location: Germany
Posts: 2951
@mat:
Ich will euch ja nicht zu nahe treten aber heutzutage noch Sort_buffer? Ist es nicht auch in eurem Fall besser ordentliche Indices zu verwenden? Benutzt Ihr noch MyISAM oder ist alles InnoDB.

Wenn ihr bei den Indices/Querys hilfe benötigt, schicke mir doch einfach mal die Langsamen Querys und die Struktur der beteiligten Tabellen. dann können wir sehen ob man da etwas optimieren kann.

Die Mysql/MariaDB Datenbanken die ich betreue müssen auch mal über 10000 Connections vertragen. Ram steht da nicht mehr als bei euch zur Verfügung und ich habe momentan 12 Cores dafür.

Vinci

hatin' on summer
Registered: Jan 2003
Location: Wien
Posts: 5832
Unter Firefox 48 funktioniert der redirect von http auf https von Haus aus irgendwie nicht. Geb ich jedoch einmal händisch https mit ein, so checkt er das bis zur nächsten Sitzung...

Irgendwer eine Idee?

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25496
Alles MyISAM, wieso auch nicht. oc.at verwendet keine Features, die für InnoDB sprechen. Bezüglich Sort-Buffer: Ich habe in den letzten Jahren versucht, überall entsprechend zu indizieren, um Sorting und Grouping ohne Index zu vermeiden. Ich hab sicher nicht alles erwischt, aber die wichtigen und langsamen Queries sind gefixt. Ja, Sort-Buffer macht mit Index wenig Sinn und es ist ungefähr das Letzte, was ich an der Config mache. Ist wahrscheinlich eher Gewohnheit, dass ich es mache. Allgemein befasse ich mich aber nur mehr wenig mit Per-Session-Values.

Selbstverständlich kann man noch das ein oder andere Query optimieren, man müsste halt weit mehr Zeit investieren als bei zB einem zusätzlichen memcached-Layer, der deutlich mehr bringen würde. Aktuell ist das Slow-Query-Log aus. Ich glaub auch nicht, dass da noch etwas Gröberes angezeigt wird, aber ich kanns ja versuchen. :)

Von dir kam oben die Frage bezüglich MySQL 5.7, richtig? Wir verwenden ausschließlich Versionen, die das OS offiziell unterstützt. Alles andere halte ich für unnötig, weil die Wartung erschwert wird.

So Aussagen wie deine 10000 Connections kenne ich gut, darauf stößt man immer wieder in meiner Position als Devop. Nichts für ungut, aber ohne dem Kontext der Infrastruktur, der Codebase und der verwendeten Queries ist die Aussage irrelevant.

Danke jedenfalls für deine Hilfe, ich komme bei Bedarf gerne darauf zurück.

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25496
Zitat von Vinci
Unter Firefox 48 funktioniert der redirect von http auf https von Haus aus irgendwie nicht. Geb ich jedoch einmal händisch https mit ein, so checkt er das bis zur nächsten Sitzung...

Irgendwer eine Idee?
Redirects können sehr hartnäckig von den Browsern gecached werden. Schon den Browser-Cache geleert und anschließend den Browser geschlossen? Was auch temporär helfen kann, ist das hinzufügen eines Query-Strings: http://www.overclockers.at/?dontcacheme

Vinci

hatin' on summer
Registered: Jan 2003
Location: Wien
Posts: 5832
Zitat von murcielago
muss jedes mal wenn ich mich einloggen will vorher die delete_cookies.php aufrufen und werde dann automatisch eingeloggt. wenn ich den browser (chrome, neueste version, win7) schließe und wieder auf oc.at surfe, muss ich mich wieder einloggen. das funktioniert aber nicht, ich muss dann wieder delete_cookies.php aufrufen und werde DANN wieder automatisch eingeloggt :D

help?

Nach dem löschen der cookies besteht nun dieses Problem bei mir. :D :p

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25496
murcielago hat gerade gemeint, dass der gecachte Redirect für ihn das Problem war und nach dem Reset des Browser-Caches das Problem gelöst ist.

Kannst du vielleicht einen Screenshot von deinen aktuell gesetzten Cookies posten, wenn du eingeloggt bist?

Vinci

hatin' on summer
Registered: Jan 2003
Location: Wien
Posts: 5832
Hm... hat eventuell was mit dem private browsing vom Firefox zu tun?


/edit
Tatsächlich. Das Problem besteht ausschließlich unter "private browsing".

/edit2
Na do ned. :p
Das Problem besteht nach wie vor. Egal ob oc.at irgendwelche Cookies gesetzt hat oder nicht?
cookies_216096.png (downloaded 2x)
Bearbeitet von Vinci am 05.08.2016, 09:57

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25496
Da fehlt das Session-Cookie in deiner Auflistung. Wenn das der Fall ist, dann ist es klar, warum du immer wieder ausgeloggt wirst.

Ich teste in Kürze den privaten Modus im Firefox und melde mich dann noch einmal.

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12122
Zitat von mat
Einer der Hauptgründe, die momentan noch gegen einen Varnish sprechen (außer den Kosten), [...]

Welche Kosten meinst du damit?

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25496
Ein lokalen Varnish kann man sicher probieren, wären auch keine Kosten. Hab aber teilweise auch schlechte Erfahrungen damit gemacht, wenn die Ressourcen eng werden. Braucht halt viel RAM und eingeloggte User profitieren davon nicht.

Edit: Was habt ihr bei Geizhals als obersten Cache-Layer? Varnish über F5?

NeM

OC Addicted
Registered: Oct 2004
Location: Austria
Posts: 4887
Klick auf die Anzahl der Posts neben einem Thread spuckt nicht mehr aus, wer wie oft gepostet hat
Bearbeitet von NeM am 05.08.2016, 16:35
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz