Serverabfrage & evtl weiterleitung falls offline

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Serverabfrage & evtl weiterleitung falls offline

    Hallo! wie der Titel hier schon verrät, geht es um eine Serverabfrage und eine eventuelle Weiterleitung falls der Server nicht erreichbar ist.

    Meine Lage ist folgende:
    (Ich verwende s1, s2, s3 als servernummerierungen)

    Ich möchte gerne mit einem PHP-Script abfragen lassen, ob Server s2, s3 erreichbar sind. und das script jeweils als eine art weiterleitungsscript nutzen (da ich bei einer domain weiß, dass sie zu 100% immer da ist) und das script dort ablegen.

    Im Prinzip:
    1- index.php auf s1 mit der funktionierenden domain
    2- index.php prüft nach, ob s2 und/oder s3 antworten.
    3- Falls s2 antwortet, weiterleiten. Falls nicht, s2offline.html öffnen.
    4- s1offline.html enthält Offline-Nachricht und die Weiterleitung zu s3

    Es wäre gut wenn man im nachhinein noch einfach server hinzufügen könnte, zb s1-s8

    Ich gebs zu, ich stell mich irgendwie doof an, und weiß nicht wie ich an diese abfragen rangehn soll, oder wo ich suchen soll, ich bitte aber um ratschläge zur besseren lösung!


    www.esl.eu macht es auch mit statusüberprüfungen, die benutzen mehrere server und garantieren hiermit zu 99,9% die verfügbarkeit.


    Ich hoffe mir kann jemand von euch helfen
    Zuletzt geändert von DanielK; 09.12.2006, 02:30.

  • #2
    Electronic Sports League is currently offline.

    The server is temporarily unable to service your request due to daily maintenance downtime. Please try again later.
    Dann hätte ich soeben im Lotto gewonnen? Die Chance lag ja bei 0,1%^^

    Es wäre gut wenn man im nachhinein noch einfach server hinzufügen könnte, zb s1-s8
    Ich denke, dass würde jeder etwas anders machen. Daher die Frage: Wie machst du es denn im Moment? Wo/Wie trägst/pflegst du deine Server ein?

    Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
    sondern mit den Augen das Manual zu lesen.

    Kommentar


    • #3
      Du könntest mit fsockopen() eine Verbindung zu den Servern herstellen.
      Wenn diese fehlschlägt zeigst du die Fehlerseite an, ansonsten leitest du z.B mit header() an den Server weiter.
      gruss Chris

      [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

      Kommentar


      • #4
        Die werden wohl eher einen LoadBalancer einsetzen, der die entsprechende Arbeit übernimmt (was wohl auch die beste Lösung sein dürfte) und nur die entsprechenden Statusmeldungen hinterher irgendwie generieren.

        Ansonsten halt ein ping auf den Server, wenn okay, dann weiterleiten, wenn nicht, dann eben nicht *zuck*

        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
        Wie man Fragen richtig stellt

        Kommentar


        • #5
          Der ping sagt dir aber nicht ob der Apache rennt.
          gruss Chris

          [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

          Kommentar


          • #6
            Original geschrieben von hhcm
            Der ping sagt dir aber nicht ob der Apache rennt.
            Für jeden Aufruf aber erstmal noch ein fsockopen auszuführen, verursacht unglaublichen Overhead, das ist erst recht unakzeptabel.
            Dann ggf. Cronjob und den Wert auf dem "Loadbalancer" cachen

            Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

            bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
            Wie man Fragen richtig stellt

            Kommentar


            • #7
              bahnhof? *g*

              Also ich hab noch garnicht damit angefangen, da ich ja nich wusste wie ich da ran gehn sollte..

              Gibt es vielleicht irgendwo ne art vorlage/hilfsdatei für so einen LoadBalancer?


              Und danke für eure antworten

              Kommentar


              • #8
                LoadBalancer ist ein vollkommen abstrakter Begriff, das reicht von zusätzlichem Server der vorgeschaltet wird, über Round-Robin beim DNS und auch nur zusätzlicher Proxy auf dem Hauptserver, der ggf. aufrufe an den apache auf dem gleichen oder auf einen anderen Server weiterleitet, oder halt nur im apache, oder auf php-Ebene ein paar redirects mit subdomains mischen, etc. etc. etc.


                De facto hast du doch schon eine Idee, nämlich das auf php-Ebene umzusetzen. Du musst nur gucken wie du die Idee komfortabel, respektive performant, umsetzt

                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                Wie man Fragen richtig stellt

                Kommentar


                • #9
                  danke für diesen ausführlichen beitrag

                  und danke auch an alle anderen, ich werde mich gleich dran setzen *gg

                  Kommentar

                  Lädt...
                  X