Dalam sebuah pembangunan sebuah aplikasi berbasis web, ketika aplikasi tersebut dikatakan sudah jadi, maka perlu di lakukan apa yang naman nya stress testing.
Secara sederhana stress testing adalah melakukan serangkaian test atau ujicoba terhadap aplikasi web tersebut dengan mensimulasikan sejumlah user yang secara bersama sama akses kedalam aplikasi web tersebut. Dengan demikian bisa diketahui performance dari web server, resource cpu yang terpakai, memory yang terpakai, berapa loading time dari aplikasi tersebut, apa saja service yang jalan dll.
Tujuan utama stress testing ini adalah memastikan kondisi aplikasi web tetap bisa berjalan dan service nya dapat melayani request yang muncul. Saya kasih contoh kasus dimana dulu ada sebuah perusahaan jasa transportasi yang membuat aplikasi pemesanan tiket online, ketika aplikasi ini muncul di media online nasional kita, maka tak ayal sekian ribu user masuk secara bersamaan, ternyata aplikasi ini tidak bisa handle request sekian banyak akibatnya website tersebut langsung down selama beberapa jam.
Contoh kedua adalah masih di beberapa situs penyedia tiket kereta api online ketika masuk masa pembelian tiket lebaran tiba, pas jam 24.00 ketika mulai bisa memesan tiket untuk 90 hari kedepan seringkali down dan sudah diakses.
Dua hal tersebut adalah contoh dimana sebaiknya memang perlu di lakukan stress testing untuk mengetahui seberapa besar “kekuatan” web server tersebut, dari sisi bisnis yang namanya down apakah karena di hack, ataukah karena overload ini mengakibatkan denial of service yang merupakan potential lost dari keuntungan perusahaan.
Nah sekarang topology stress testing adalah kurang lebih seperti dibawah ini ‘
Aplikasi stress testing di letakkan pada jaringan dimana controller mampu terkoneksi dengan monitoring server, dimana didalam monitoring server inilah di install aplikasi untuk stress testing, controller hanya bersifat memberikan perintah pengetestan saja , yang nantinya akan di eksesuksi oleh monitoring server. Biasanya monitoring server ini adalah server yang onsite, yang kita bisa melakukan remote kedalamnya. Monitoring server bisa berupa server fisik ataupun server VM. Sedang controller bisa bersifat mobile / portable yang penting dia bisa remote kedalam server monitoring. Contoh screenshot aplikasi stress testing adalah dibawah ini
Beberapa tools yang bisa digunakan antara lain paessler, wapt( web application, load, stress and performance testing), smartbear tool stress testing, neoload.
Semoga bermanfaat.
Baca konten-konten menarik Kompasiana langsung dari smartphone kamu. Follow channel WhatsApp Kompasiana sekarang di sini: https://whatsapp.com/channel/0029VaYjYaL4Spk7WflFYJ2H