Testy wydajnościowe

Odpowiedz Nowy wątek
2019-12-18 11:55

Rejestracja: 6 lat temu

Ostatnio: 39 minut temu

0

Klient wymaga przeprowadzenia testów wydajnościowych. Projekt napisany z użyciem Java, Spring, Kafka, Couchbase. Od czego zacząć?
Jakie polecacie narzędzia? Wiem, że jmeter do tego służy ale słyszałem różne opinie na temat tego narzędzia.

Pozostało 580 znaków

2019-12-18 12:01

Rejestracja: 11 lat temu

Ostatnio: 23 minuty temu

1

Poczytaj o coordinated omission. Polecam wrk2


„Pomysł wart jest tylko 1 zł + VAT”

Pozostało 580 znaków

2019-12-18 12:21

Rejestracja: 8 lat temu

Ostatnio: 11 minut temu

1

zaczij od ustalenia wymagan. Tego jakiego rodzaju to maja byc testy, jaki load, jak masz pozniej przedsatwic wyniki itp.

Z narzedzi do wyboru: Jmeter, Locust (chyba najmniejszy prog wejscia), Gatling, wrk2. Kazde ma swoje plusy dodatnie i ujemne.

Jest spora szansa ze narzedzie to bedzie wybor drugorzedny.
Co do coordinated omission -> nie jest uwzgledniane w statystykach z Jmetera, ale jak sobie podlaczysz perfmona to widzisz na wykresach co sie dzieje.

Pozostało 580 znaków

2019-12-18 12:43

Rejestracja: 6 lat temu

Ostatnio: 39 minut temu

0

Czy wspomniane przez was narzędzia np. wrk2 ogarną to, że np. response z pierwszego rq będzie potrzebny w kolejnym rq?

Przykładowy scenariusz testowy:

  1. Użytkownik rejestruje się.
  2. Użytkownik loguje się -> token.
  3. Użytkownik szuka produktu w sklepie (potrzebny token z pkt 2).
  4. Użytkownik dodaje produkt do koszyka (potrzebny token z pkt 2).
  5. Użytkownik składa zamówienie (potrzebny token z pkt 2).
edytowany 1x, ostatnio: lookacode1, 2019-12-18 12:44

Pozostało 580 znaków

2019-12-18 12:45
Moderator

Rejestracja: 12 lat temu

Ostatnio: 17 minut temu

Lokalizacja: Wrocław

1

JMeter oraz Gatling ogarną (możesz w nich przygotować cały scenariusz testowy), wrk2 jest dosyć prymitywne i raczej z tym konkretnie zadaniem sobie nie poradzi.


edytowany 1x, ostatnio: Patryk27, 2019-12-18 12:45

Pozostało 580 znaków

2019-12-18 13:07

Rejestracja: 6 lat temu

Ostatnio: 39 minut temu

0
Patryk27 napisał(a):

JMeter oraz Gatling ogarną

Które z tych dwóch będzie prostsze do ogarnięcia / przyśpieszy development?

Pozostało 580 znaków

2019-12-18 13:13
Moderator

Rejestracja: 12 lat temu

Ostatnio: 17 minut temu

Lokalizacja: Wrocław

2

Mi personalnie bardziej podpadł Gatling.


Pozostało 580 znaków

2019-12-19 16:27

Rejestracja: 1 miesiąc temu

Ostatnio: 20 minut temu

2

Testy wydajnościowe trzeba zacząć od wymagań. Jak ktoś Ci powie, że 'aplikacja ma działać szybko' to gorzej, niż jakby Ci nic nie powiedział. Musi określić, w jakim środowisku, przy jakim obciążeniu, w jakich warunkach, przy jakim ruchu jakie mają być czasy odpowiedzi (średnie i maksymalne, po ucięciu np 3% najlepszych i najgorszych rezultatów) oraz przez jaki czas ma być przeprowadzany test.

Co do samych tooli, to JMeter jest najprostszy, ale Gatling:

  1. Jest w Scali (moda + ScalaTest + model aktorów)
  2. Jest narzędziem z kodem
  3. Ma lepsze wsparcie do CI/CD
  4. Jest w Scali (drugi raz to samo, ale skoro temat w sekcji Java to zakładam, że JVM Wam nie obcy) i będzie łatwiej rozszerzalny.

JMeter jest prostszy i zapewnia więcej funkcji out-of-the-box, ale dopisanie czegoś customowego już takie fajne nie będzie (aczkolwiek też się da).

Pozostało 580 znaków

2019-12-19 21:37

Rejestracja: 6 lat temu

Ostatnio: 39 minut temu

0

PM powiedział zróbcie testy wydajnościowe, nic nie wspomniał o wymaganiach.

Pozostało 580 znaków

2019-12-20 08:29

Rejestracja: 1 miesiąc temu

Ostatnio: 20 minut temu

1

To pozostaje się dowiedzieć ;] Można na przykład wziąć ruch i konfiguracje z produkcji i przeskalować to na to, jakie możecie mieć środowisko testowe. I określić, co dokładnie chcecie zmierzyć, bo testy wydajnościowe też się dzielą na kilka rodzajów.

Pozostało 580 znaków

2019-12-20 08:40

Rejestracja: 6 lat temu

Ostatnio: 1 godzina temu

0
lookacode1 napisał(a):

PM powiedział zróbcie testy wydajnościowe, nic nie wspomniał o wymaganiach.

może chodziło mu o to żęby określić jaki ruch/jakie obciążenie przyjmie aplikacja w obecnej formie? to chyba da sie zmierzyć bez bardzo szczegółowych wymagań

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0