Virheet ja vastakoodit

Yleisiä vinkkejä

  • varmista, että kuormitustestattava URL on käytettävissä ja julkisesti saatavilla ennen kuormitus- tai suorituskykytestien suorittamista
  • tarkista HTTP-menetelmä (GET on pyyntö, jonka selaimet tekevät käytettäessä verkkosivustoa tai API-päätepistettä)
  • aloita pienellä asiakasmäärällä (25-50 asiakasta) ja tarkista virhemäärä
  • kokeile kasvattaa asiakasmäärää asteittain ymmärtääksesi kuinka API:si, verkkosivustosi tai verkkosovelluksesi käyttäytyy
  • tarkista aika, latenssi, osumat, läpimeno ja virheet jokaisessa testissä järjestelmäsi suorituskyvyn arvioimiseksi

3xx-vastakoodit (uudelleenohjaus)

  • jos kuormitustestiin lisätty URL tekee uudelleenohjauksia toiseen URL:iin
  • jos testaat uudelleenohjausta, kokeile tehdä kuormitustesti lopulliseen URL:iin uudelleenohjausten jälkeen
  • poista "Follow redirects" -valintaruutu URL:n vierestä jos haluat välttää pyyntöjesi uudelleenohjausta ja tehdä kuormitustestin lisättyyn URL:iin

4xx-vastakoodit (asiakaspuolen virheet)

  • URL on oikein ja julkisesti saatavilla
  • tarkista käytetty HTTP-menetelmä: GET, POST, PUT tai DELETE (GET on pyyntö, jonka selaimet tekevät käytettäessä verkkosivustoa tai API-päätepistettä)
  • pyyntöjen otsikot, evästeet, kyselyparametrit tai HTTP-perustodennusparametrit on asetettu oikein

5xx-vastakoodit (palvelinpuolen virheet)

  • vastakoodi, yleensä jos kuormitustestattava API, verkkosivusto, verkko- tai mobiilisovellus ei käsittele kuormitusta kunnolla, alat vastaanottaa 503 Service Unavailable -vastauksia
  • kokeile vähentää asiakasmäärää (samanaikaisia käyttäjiä) kuormitustestissäsi ja tarkista järjestelmäsi rajat

Lisätietoja verkkosivustojen ja API:en kuormitustestauksesta pilvessä LoadFocus-kuormitustestaustyökalulla, katso Kuormitustestauspalvelu tai JMeter-kuormitustestauspalvelu.

Vastakoodit (Täydellinen luettelo)

w3schools.com:n mukaan tässä on luettelo HTTP-tilaviesteistä, joita saatetaan palauttaa suoritettaessa kuormitustestiä API-päätepisteille, verkkosivustoille, verkko- ja mobiilisovelluksille:

1xx: Tiedotus

  • 100 Continue Palvelin on vastaanottanut pyyntöotsikot ja asiakkaan tulisi jatkaa pyyntörungon lähettämistä
  • 101 Switching Protocols Pyytäjä on pyytänyt palvelinta vaihtamaan protokollia
  • 103 Checkpoint Käytetään uudelleenaloitettavien pyyntöjen ehdotuksessa keskeytettyjen PUT- tai POST-pyyntöjen jatkamiseen

2xx: Onnistunut

  • 200 OK Pyyntö on OK (tämä on onnistuneiden HTTP-pyyntöjen vakiovastaus)
  • 201 Created Pyyntö on täytetty ja uusi resurssi on luotu
  • 202 Accepted Pyyntö on hyväksytty käsittelyyn, mutta käsittelyä ei ole vielä suoritettu loppuun
  • 203 Non-Authoritative Information Pyyntö on käsitelty onnistuneesti, mutta palauttaa tietoa, joka voi olla toisesta lähteestä
  • 204 No Content Pyyntö on käsitelty onnistuneesti, mutta ei palauta sisältöä
  • 205 Reset Content Pyyntö on käsitelty onnistuneesti, mutta ei palauta sisältöä ja vaatii pyytäjää nollaamaan dokumenttinäkymän
  • 206 Partial Content Palvelin toimittaa vain osan resurssista asiakkaan lähettämän range-otsikon vuoksi

3xx: Uudelleenohjaus

  • 300 Multiple Choices Linkkilista. Käyttäjä voi valita linkin ja siirtyä kyseiseen sijaintiin. Enintään viisi osoitetta
  • 301 Moved Permanently Pyydetty sivu on siirretty pysyvästi uuteen URL:iin
  • 302 Found Pyydetty sivu on siirretty tilapäisesti uuteen URL:iin
  • 303 See Other Pyydetty sivu löytyy toisesta URL:sta
  • 304 Not Modified Osoittaa, että pyydettyä sivua ei ole muokattu viimeisen pyynnön jälkeen
  • 306 Switch Proxy Ei enää käytössä
  • 307 Temporary Redirect Pyydetty sivu on siirretty tilapäisesti uuteen URL:iin
  • 308 Resume Incomplete Käytetään uudelleenaloitettavien pyyntöjen ehdotuksessa keskeytettyjen PUT- tai POST-pyyntöjen jatkamiseen

4xx: Asiakasvirhe

  • 400 Bad Request Pyyntöä ei voida täyttää virheellisen syntaksin vuoksi
  • 401 Unauthorized Pyyntö oli laillinen, mutta palvelin kieltäytyy vastaamasta. Käytetään kun todennus on mahdollista mutta epäonnistui tai sitä ei ole vielä annettu
  • 402 Payment Required Varattu tulevaa käyttöä varten
  • 403 Forbidden Pyyntö oli laillinen, mutta palvelin kieltäytyy vastaamasta
  • 404 Not Found Pyydettyä sivua ei löytynyt, mutta se saattaa olla saatavilla tulevaisuudessa
  • 405 Method Not Allowed Pyyntö tehtiin sivulle käyttäen pyyntömenetelmää, jota sivu ei tue
  • 406 Not Acceptable Palvelin voi tuottaa vain vastauksen, jota asiakas ei hyväksy
  • 407 Proxy Authentication Required Asiakkaan on ensin todennettava itsensä välityspalvelimelle
  • 408 Request Timeout Palvelimen aikakatkaisu pyynnön odottamisessa
  • 409 Conflict Pyyntöä ei voitu suorittaa pyynnön ristiriidan vuoksi
  • 410 Gone Pyydetty sivu ei ole enää saatavilla
  • 411 Length Required "Content-Length" ei ole määritelty. Palvelin ei hyväksy pyyntöä ilman sitä
  • 412 Precondition Failed Pyynnön ennakkoehto arvioitiin palvelimen toimesta epätodeksi
  • 413 Request Entity Too Large Palvelin ei hyväksy pyyntöä, koska pyyntöentiteetti on liian suuri
  • 414 Request-URI Too Long Palvelin ei hyväksy pyyntöä, koska URL on liian pitkä
  • 415 Unsupported Media Type Palvelin ei hyväksy pyyntöä, koska mediatyyppiä ei tueta
  • 416 Requested Range Not Satisfiable Asiakas on pyytänyt osaa tiedostosta, mutta palvelin ei voi toimittaa kyseistä osaa
  • 417 Expectation Failed Palvelin ei voi täyttää Expect-pyyntöotsikkokentän vaatimuksia

5xx: Palvelinvirhe

  • 500 Internal Server Error Yleinen virheilmoitus kun tarkempaa viestiä ei ole saatavilla
  • 501 Not Implemented Palvelin ei joko tunnista pyyntömenetelmää tai siltä puuttuu kyky täyttää pyyntö
  • 502 Bad Gateway Palvelin toimi yhdyskäytävänä tai välityspalvelimena ja vastaanotti virheellisen vastauksen ylävirran palvelimelta
  • 503 Service Unavailable Palvelin on tällä hetkellä poissa käytöstä (ylikuormitettu tai alhaalla)
  • 504 Gateway Timeout Palvelin toimi yhdyskäytävänä tai välityspalvelimena eikä saanut vastausta ajoissa ylävirran palvelimelta
  • 505 HTTP Version Not Supported Palvelin ei tue pyynnössä käytettyä HTTP-protokollaversiota
  • 511 Network Authentication Required Asiakkaan on todennettava saadakseen verkkoyhteyden

Muu: Yhteysvirhe

Kuormitustestiin lisättyyn URL:iin ei voitu päästä jostakin seuraavista syistä: -- URL ei ole julkisesti saatavilla (tuemme vain URL:eja, jotka ovat julkisesti saatavilla Internetin kautta) -- järjestelmä kaatui jostain syystä