Lasttest

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Lasttest

    Hallo.

    Ich wurde damit betraut, einen Last- bzw. Streßtest durchzuführen.

    Nun habe ich mich ein wenig eingelesen und starke Zweifel, ob so ein Lasttest in diesem Fall überhaupt Sinn macht.

    Die Situation ist die, dass das zu testende System nicht lokal und auch nicht im Intranet vorliegt, sondern nur durch eine VPN erreichbar ist. Zudem kommt, dass sich der Zielserver (so wie ich) in Deutschland befindet, aber im Live-Betrieb die Anfragen aus dem Ausland kommen.

    Wenn ich nun einen Lasttest mache, teste ich dann nicht eher die VPN-Strecke von mir zum Server, anstatt das System selber? Und da die VPN auf ~200kb/s begrenzt ist, verfälsche ich doch die Daten dadurch, oder nicht??

    Kann mir jemand etwas dazu sagen? Ich finde nämlich keine Informationen darüber, wie man "Fernsysteme" testet. In den zahlreichen Beispielen geht's immer nur um Systeme, die sich auf dem lokalen Rechner oder zumindest im Intranet befinden.

    Danke im Voraus.

    P.S.:
    Ich wusste nicht genau, wo ich meine Frage stellen kann, da irgendwie kein Bereich so richtig passt. @MOD: Bitte nicht böse sein und Thread ggf. verschieben. Danke.

  • #2
    Den Test direkt am Server durchführen geht nicht?

    Comment


    • #3
      Hallo,

      es wäre natürlich wenig sinnvoll, von deinem lokalen Rechner aus Testläufe auf den per VPN verbundenen Server durchzuführen.

      Das VPN bietet dir ja aber noch andere Möglichkeiten. Es holt deinen lokalen PC in das entfernte Intranet und gibt dir damit (meistens) alle Privilegien, für die du sonst direkt dort am Switch eingestöpselt sein müsstest. Also kannst du das Testsystem direkt dort als lokalen Test einrichten und über VPN nur den Start auslösen, nicht aber den Test selber.

      Gruß,

      Amica
      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
      Super, danke!
      [/COLOR]

      Comment


      • #4
        Originally posted by h3ll View Post
        Den Test direkt am Server durchführen geht nicht?
        Jein. Ich arbeite im HomeOffice und müsste für Tests ~300km fahren.

        Originally posted by AmicaNoctis View Post
        Also kannst du das Testsystem direkt dort als lokalen Test einrichten und über VPN nur den Start auslösen, nicht aber den Test selber.
        Es wäre eine Möglichkeit, wenn auch etwas umständlich, denn dafür müsste ich wiederum einen separaten Rechner dort stehen haben, auf dem ich die jew. Programme installiere.

        Aber gut. Nehmen wir an, dass das ginge.


        Was sagen die Werte aber dann über die mögliche Last usw. aus, wenn die eigentlichen Benutzer über VPN auf den Server zugreifen müssen. Dann würde man doch so argumentieren "Ja, im lokalen Netz ist der Zugriff schnell. Aber aus 1000km Entferung bekommen wir völlig andere Werte."

        Was ich damit sagen will: Geht es bei solchen Tests nicht (auch) darum, reale Bedingungen abzubilden?

        cya
        Last edited by sallow2001; 11-12-2010, 13:57.

        Comment


        • #5
          Wenn ich dich richtig verstehe, soll der Live-Betrieb dann auch über VPN erfolgen?!? Das musst du mal bitte erklären. Wenn es nicht so ist, dann erklär bitte, was du mit realen Bedingungen meinst.

          Übrigens musst du den Test nicht auf einem weiteren Rechner laufen lassen. Das kannst du ja auch direkt auf dem Server tun. Dann testest du natürlich nicht das Netzwerk, aber den Server hinsichtlich gleichzeitiger Verbindungen und Datenbankzugriffe, Speicher- und Prozessorlast und sowas alles.
          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
          Super, danke!
          [/COLOR]

          Comment


          • #6
            Originally posted by AmicaNoctis View Post
            Wenn ich dich richtig verstehe, soll der Live-Betrieb dann auch über VPN erfolgen?!?
            Korrekt.

            Originally posted by AmicaNoctis View Post
            Das musst du mal bitte erklären.
            Was soll ich daran erklären? Der Server mit Datenbank, Skripte etc. steht in Deutschland und diejenigen, die das System nutzen müssen, sitzen im Ausland.

            Wie die Verbindung nun genau hergestellt wird, weiß ich nicht, aber der Weg führt zumindest durchs Internet. (Mit welchen Sicherungsmaßnahmen usw. auch immer.)

            Originally posted by AmicaNoctis View Post
            hinsichtlich gleichzeitiger Verbindungen und Datenbankzugriffe, Speicher- und Prozessorlast und sowas alles.
            Okay, aber wenn ich das Programm zum Testen auf den Server installieren würde, verfälsche ich das Ergebnis ja noch mehr, denn das Testprogramm selber verbraucht doch auch Ressourcen.

            Mal davon abgesehen, dass es sich um einen Linux-Server handelt und ich den Test gerne mit Windows-Software machen würde.

            Und wie ich bereits schrieb: Was sagen die Werte über die mögliche Last aus? Wenn ich auf dem lokalen Rechner den Login mit bspw. 100 Usern simuliere, ist das doch etwas völlig anderes, als wenn sich im Live-Betrieb wirklich 100 Leute an den Rechner setzen und auf den deutschen Server zugreifen.

            Comment


            • #7
              Originally posted by sallow2001 View Post
              Jein. Ich arbeite im HomeOffice und müsste für Tests ~300km fahren.
              Gibt's keinen Remote-Zugang (SSH, etc.)? Was ist das für ein komischer Server?

              Comment


              • #8
                Originally posted by sallow2001 View Post
                Wenn ich auf dem lokalen Rechner den Login mit bspw. 100 Usern simuliere, ist das doch etwas völlig anderes, als wenn sich im Live-Betrieb wirklich 100 Leute an den Rechner setzen und auf den deutschen Server zugreifen.
                Dieser Unterschied sagt aber dann nur etwas über das Netz aus, nicht über den Server selbst. Willst du jetzt das Netz testen oder den Server?
                [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                Super, danke!
                [/COLOR]

                Comment


                • #9
                  Originally posted by h3ll View Post
                  Gibt's keinen Remote-Zugang (SSH, etc.)?
                  Natürlich habe ich einen SSH-Zugriff...wenn ich mich ins VPN eingewählt habe.

                  Originally posted by AmicaNoctis View Post
                  Willst du jetzt das Netz testen oder den Server?
                  Getestet werden soll natürlich die Performance des programmierten Systems.


                  Sorry, versteht mich nicht falsch, aber seid ihr vom Fach? Habt ihr schon Lasttests gemacht? Irgendwie reden wir hier um den heißen Brei und nicht über das, was ich gefragt hatte.

                  Comment


                  • #10
                    Ja mei, so kompliziert ist es doch nicht. Du hast Software auf einem System zu testen, mit dem du zu diesem Zwecke über ein VPN verbunden bist. Die Software wird im produktiven Betrieb ebenfalls übers Netzwerk benutzt, wenn auch nicht unbedingt über das selbe VPN. Dein Problem ist nun, dass du den Test offenbar unter absolut idealen Bedingungen durchführen möchtest. Dazu gehört zum Einen, dass dein Zugriff über VPN auf dem System keine Kosten verursachen darf. Das kann man arrangieren: Lass den Test laufen während du gar nicht verbunden bist (Atjob, Ausgabe in Logfile). Desweiteren möchtest du aber den Test gerade nicht auf der Maschine selbst durchführen, weil a) das Testprogramm selbst Last verursacht und b) die Netzwerkverbindungen fehlen, die im Livebetrieb Last verursachen.

                    Das ist jetzt aber nichts Besonderes, sondern Normalität bei Tests von Serversoftware! Ich bin nicht "vom Fach" (welches soll'n das eigentlich sein?), aber mir ist intuitiv klar, dass die totale Isolation das SUT theoretisch unmöglich ist, denn das T kann man dem SU nun mal nicht ersparen. Wenn das ginge, wäre Schrödingers Katze noch am Leben. ;-)
                    Last edited by onemorenerd; 12-12-2010, 03:28.

                    Comment


                    • #11
                      Originally posted by onemorenerd View Post
                      dass du den Test offenbar unter absolut idealen Bedingungen durchführen möchtest.
                      Nein, eben nicht!

                      Was ich versuche durch diesen Thread herauszufinden ist: Was sagen die Werte eines Last-/Streßtest aus, wenn die Bedingungen zwischen Test- und Live-Betrieb anders sind? (Dass man keine absolut identische Umgebung schaffen kann, ist mir schon klar, aber bspw. der lokale Zugriff auf ein System ist ja nun völlig anders als wenn ich 1000km vom Rechner entfernt bin.)

                      Ein (dummes) Beispiel, damit's deutlich(er) wird: VW stellt ein Auto her und macht folgende Aussage: Wir haben das Auto bis zu einer Geschwindigkeit von 30km/h getestet und stellten keinerlei Fehler fest. Das Auto ist sicher.

                      Der Käufer setzt sich in das neu erworbene Auto, fährt auf die Autobahn und plötzlich platzen ihm alle Reifen, weil diese bei 100km/h zu heiß werden.

                      Wenn ich einen Test durchführe, muss ich doch unter den Bedingungen testen, die später im Live-Betrieb auch herrschen. Ansonsten ist doch eine Aussage über die Performance, Stabilität usw. gar nicht allgemein gültig, sondern trifft nur unter den (mehr oder weniger) idealen Bedingungen zu.

                      Dies ist nun meine Aussage und ich hoffte, jemanden zu finden, der dies bestätigen oder (mit Gründen) widerlegen kann, da ich in keiner Literatur über diese Problematik etwas gelesen habe.

                      Deshalb auch meine "vom Fach"-Frage, denn die Meinung eines anderen Programmierers ist zwar interessant, doch da ich's "offiziell" wissen will, müsste ich's schon irgendwie belegen können und nicht nur mit "Der xy aus dem Forum z hat gesagt, dass...." begründen.

                      Originally posted by onemorenerd View Post
                      bin nicht "vom Fach" (welches soll'n das eigentlich sein?)
                      Na ja, entweder direkt jemand aus der Qualitätssicherung oder halt ein Programmierer, der sich mit Lasttests beschäftigt hat.
                      (Und zwar entsprechend der allgemein herschenden Standards und nicht für sich im Keller mit Pizza in der einen und Cola in der anderen Hand, wie wir alle sonst so programmieren. )

                      cya

                      Comment


                      • #12
                        Originally posted by sallow2001 View Post
                        … der lokale Zugriff auf ein System ist ja nun völlig anders als wenn ich 1000km vom Rechner entfernt bin.
                        Die Distanz ist irrelevant, das ist klar. Du willst auch nicht wissen wieviel CPU und Speicher die Eingabe über USB-Keyboard verbrät. Du möchtest wissen welche Kosten eine Netzwerkverbindung verursacht. Das kann man aber nicht pauschal beantworten. Es gibt sicherlich eine "Grundlast" für Kernelkomponenten, Treiber, Puffer etc., aber die ist auf jedem System anders und vor allem verdammt gering. Das kannst du einfach unter den Tisch fallen lassen. Auf dem System läuft doch im Produktivbetrieb noch viel viel mehr als deine Software und der Netzwerkstack. Firewall, IDS, Logging, Monitoring, Backups etc. belasten das System viel mehr als das Verarbeiten der Eingabe über eine Netzwerkverbindung.

                        Wenn ich einen Test durchführe, muss ich doch unter den Bedingungen testen, die später im Live-Betrieb auch herrschen.
                        Na wenn du das glaubst, dann viel Spass beim Nachbilden der realen Lastsituation.

                        Ansonsten ist doch eine Aussage über die Performance, Stabilität usw. gar nicht allgemein gültig, sondern trifft nur unter den (mehr oder weniger) idealen Bedingungen zu.
                        Wie mit den Reifen. Die werden nämlich bei 100 km/h auch platzen, wenn die Umgebungstemperatur ausreichend hoch ist (Wüste). Die Höchstgeschwindigkeit ist also an einen Temperaturbereich gebunden und ein Lasttestergebnis an Rahmenbedingungen.

                        Deshalb auch meine "vom Fach"-Frage, denn die Meinung eines anderen Programmierers ist zwar interessant, doch da ich's "offiziell" wissen will, müsste ich's schon irgendwie belegen können und nicht nur mit "Der xy aus dem Forum z hat gesagt, dass...." begründen.
                        Du willst also eigentlich Literaturverweise, denn alles was wir einfach so erzählen, kannst du nicht verwenden. Hättest du vielleicht gleich anfangs so deutlich sagen sollen.

                        Comment

                        Working...
                        X