Služby · Výkonnostné testy

Výkonnostné a záťažové testy

Odmeriame, akú záťaž systém zvládne v testovaných podmienkach a pri akej záťaži sa začína spomaľovať. Ak máme k dispozícii aplikačné a serverové metriky, pomôžu nám zúžiť hľadanie pravdepodobných úzkych miest. Pripravíme realistické scenáre, testy spustíme pomocou nástrojov k6, Locust alebo JMeter a výsledky vyhodnotíme podľa p95 a ďalších metrík, nie iba podľa priemeru.

  • k6
  • Locust
  • JMeter

O službe

Kapacitu systému chcete poznať vopred

Výpadok počas marketingovej kampane, Black Friday alebo po spustení novej funkcie prichádza práve v čase, keď systém potrebujete najviac. Záťažový test môže vopred ukázať správanie systému pri očakávanej záťaži a hranicu nameranú v testovaných podmienkach.

Navrhneme záťažové scenáre podľa typického správania používateľov a dostupných prevádzkových údajov – nie iba syntetické požiadavky na jednu URL. Podľa cieľa a rizika vyberieme vhodnú kombináciu load, stress, spike alebo soak testov.

Dostanete report s kapacitou nameranou v testovanom prostredí, podmienkami, pri ktorých výsledok platí, pravdepodobnými úzkymi miestami a odporúčanými ďalšími krokmi.

Jednoduchý vstup

Čo od vás potrebujeme

Čo získate

Čo vám výkonnostné testy prinesú

Nameraná kapacita v testovaných podmienkach

Dostanete namerané hodnoty o správaní systému pri dohodnutej súbežnosti a záťaži vrátane podmienok, pri ktorých výsledok platí.

Užší okruh pravdepodobných príčin

Ak sú dostupné aplikačné a serverové metriky, výsledky pomôžu zúžiť hľadanie napríklad na databázové dotazy, connection pool alebo infraštruktúru.

Menej rizika pred kampaňou

Pred Black Friday, spustením reklamy či migráciou získate meranie kapacity v dohodnutých podmienkach a podklady na rozhodnutie, čo upraviť.

Podklady pre škálovanie

Merania vám pomôžu rozhodnúť, či a kam investovať do infraštruktúry, aby sa rozhodnutia o škálovaní a kapacite neopierali iba o odhady.

Ako to prebieha

Možný priebeh spolupráce

Konkrétne kroky a ich poradie prispôsobíme vašej situácii, dostupným podkladom a dohodnutému výstupu.

  1. Definícia scenárov a cieľov

    Určíme kľúčové scenáre, očakávanú záťaž a limity odozvy, chybovosti a priepustnosti. Zároveň si potvrdíme podmienky, v ktorých má meranie platiť.

  2. Príprava skriptov a prostredia

    Naskriptujeme scenáre, pripravíme testovacie dáta a podľa dostupnosti nastavíme zber dohodnutých aplikačných a serverových metrík.

  3. Beh testov

    Podľa cieľa a rizika spustíme vhodnú kombináciu load, stress, spike alebo soak testov a počas behu sledujeme dohodnuté metriky.

  4. Analýza a odporúčania

    Dostanete report s výsledkami, pravdepodobnými úzkymi miestami a odporúčaniami na ich ďalšie overenie alebo odstránenie.

Nástroje a postupy

Nástroje a pracovné postupy volíme podľa konkrétneho riešenia

Pri výbere uprednostňujeme open-source nástroje, ak sú vhodné pre danú službu, vaše prostredie a spôsob prevádzky. Ak riešenie využíva komponent s inou licenciou, platenú cloudovú službu alebo externú infraštruktúru, podmienky a náklady uvedieme v ponuke. Spôsob odovzdania výstupov a vytvoreného kódu dohodneme podľa typu služby.

  • k6

    Náš hlavný open-source nástroj na záťažové testy. Scenáre v JavaScripte alebo TypeScripte žijú v repozitári a môžu sa pravidelne spúšťať aj v CI.

  • Locust

    Locust volíme, keď má byť záťažová sada v Pythone rovnako ako ostatné testy. Scenáre sú čitateľný open-source kód, ktorý môže váš tím verzovať, kontrolovať a ďalej rozvíjať.

  • JMeter

    JMeter používame pri JDBC, JMS, FTP, SOAP a ďalších protokoloch alebo vtedy, keď máte existujúcu JMeter sadu, ktorú sa oplatí zachovať a ďalej rozvíjať.

Hlbšie k téme

Ak sa chcete dozvedieť viac

Poďme sa pozrieť na váš konkrétny prípad

Stručne nám opíšte, čo chcete preveriť alebo automatizovať, aký systém či proces používate a čo vás dnes najviac obmedzuje. Ozveme sa s návrhom vhodného ďalšieho kroku.