Yük testi, bir altyapının ne kadar kullanıcı yükünü kaldırabileceğini anlamak için wicht bir adımdır. Daha önce güzel bir altyapı kurduk, ancak bu altyapının ne kadar kullanıcı yükünü kaldırabileceğini bilmiyoruz. Bunu öğrenmek için k6 load testing aracını kullanacağız. k6, modern bir yük testi aracıdır ve yük testlerini scriptleyip çalıştırmayı kolaylaştırır.
k6 ile Yük Testi
k6 aracını kullanmak için önce kurulumunu yapmamız gerekir. k6'nın kurulum sayfasındaki talimatları takip ederek k6'yı kurabiliriz.
Yük Testi Scripti Yazma
Bir yük testi scripti yazarak web uygulamamızın domaine 10.000 sanal kullanıcı ile yük testi yapacağız. load-test.js adında bir dosya oluşturup aşağıdaki içeriği ekleyeceğiz.
import http from 'k6/http';
import { sleep } from 'k6';
export const options = {
vus: 10000,
duration: '20s',
};
export default function () {
http.get(');
sleep(1);
}Yük Testi Çalıştırma
Yük testini çalıştırmak için aşağıdaki komutu kullanabiliriz: k6 run load-test.js
Test bittikten sonra, json dosyası oluşturulacak ve gerçek zamanlı istatistikler hakkında bilgi verecektir.
Sonuçları Analiz Etme
Json çıktı dosyasını çeşitli araçlar ile analiz edebiliriz. Bir popüler seçenek, Grafana ve k6 Cloud'u kullanmaktır. Ayrıca, k6'nın test çalıştırma sonunda sunduğu özet raporu da kullanabiliriz.
Bu test sonuçları, altyapımızın 10.000 kullanıcı yükünü iyi bir şekilde karşılayamadığını gösteriyor. Bu, beklendiği gibidir, çünkü otomatik ölçeklendirme veya önbelleğe alma gibi özellikleri ayarlamadık ve sadece iki EC2 örneği çalışıyordu. Üretim senaryosunda, yüksek trafik yüklerini etkili bir şekilde işleyebilmek için bu özellikleri uygulamak istersiniz.
Gelecekte, yük testi sonuçlarını iyileştirmek ve altyapımızı daha da güçlendirmek için çalışacağız.
Yapay zeka özeti
Yük testi, altyapınızın kullanıcı yükünü ne kadar iyi bir şekilde karşılayabileceğini anlamak için önemlidir. k6 load testing aracı ile nasıl yük testi yapılır?