Onlinestatus

aKraus

Erfahrenes Mitglied
Hi,

ich hab ein Problem mit dem Online Status ich weiß nicht, wie ich das am Besten realisieren soll. Fakt ist, dass ich dabei bin die meine Seite komplett zu cachen. Das heißt, ich verwende Smarty zum Erstellen und Cachen von Templates. Dementsprechend kann es passieren, dass ich z.B. die Newsseite 2-3 Stunden einfach mal zwischenspeichere (inklusive Kommentare).

Jetzt weiß ich nicht wie ich das mit dem Online Status am besten realisieren soll. Um den Server zu entlasten, hätte ich eine PHP Seite erstellt, welche eine Datenbankselect ausführt und dann entweder ein rotes oder ein grünes Bild anzeigt. Nur wie halte ich diese Seite aktuell? Ich könnte zwar per Cronjob eine Datenbank auf einen externen Server auf dem Laufenden halten, nur im schlimmsten Fall ist das ganze dann 59 Sekunden zeitverzögert! Wenn ich mich von meinem Server über die normale Seite auf eine Datenbank eines anderen Servers verbinde, würde die ganze Performance den Bach runter gehen. Anzumerken ist, dass der zweite Server in einen anderem RZ steht.

Habt ihr eine Idee?
 
Zuletzt bearbeitet:
Da mir keiner Antwortet, probier ich's nochmal leichter zu schreiben:

Ich hab zwei Server.
  • Server 1 steht in Berlin und auf dem läuft die Website. Dieser ist ziemlich ausgelastet
  • Server 2 steht in Frankfurt. Der Server ist fast ungebraucht, allerdings ist er "kleiner" als der 1. Server
Ich hatte jetzt gedacht, so eine Art isoline.php?id=1 zu erstellen. Diese liegt auf dem externen Server, selectiert sich den onlienstatus für die id und zeigt das bild an:
PHP-Quellcode:

PHP:
header('Content-type: image/jpeg');
header('Pragma: no-cache');  
header('Expires: 0');  
readfile('online.jpg');

Die Frage ist, wie ich die Daten auf einen externen Server, welcher in einen anderen Rechenzentrum steht, aktuell halte, ohne bei jedem Pageaufruf auf die externe Datenbank zu connecten?
 
Wenn du nicht auf beiden Servern eine UserDb haben willst, was verstädnlich ist, bzgl der Verwaltung, bleibt dir nix anderes übrig, als vom Frakfurter Serevr auf den Berliner zu connecten, was dann wiederrum mit Traffic verbunden ist.

Aber wie du schon geschrieben hast, willst du das ja nicht tun ;)
Dann wieder zur ersten Möglichkeit. Einfach die Scripte zum Userdaten ändern, registrieren, etc umschreiben, damit du auch auf dem zweiten Server die Daten hast und ändern, hinzufügen, etc kannst. Wobei dann hierbei wieder Traffic aufkommt. Jetzt musst du dir überlegen, welcher Weg weniger Traffic und Last verursacht.

Evt hilft es ja auch, wenn du den DB-Sever auslagerst?!

Mehr Möglichkeiten fallen mir jetzt grad nicht ein.
 
Zurück