Langsung ke konten utama

Cara Testing API / Web Untuk mampu menerima Hit 10K / 15 detik Secara Free

10K hit / 15 detik? Yakin kuat?


Pernah di tanya seperti itu kah? seberapa kuat API dan arsitektur web yang anda buat untuk menangani hit customer secara bersamaan? Pernah berfikir mampu ga arsitektur dan web anda melayani ratusan customer dalam satu waktu dan kapan harus upgrade arsitektur anda?
Ini berawal dari case untuk kebutuhan otentikasi wifi login customer yang terintegrasi dengan radius dan bakal hit API untuk cross check user password yang kita generatekan di aplikasi kita. 


Pertamakali testing, menghasilkan sesuatu yang sangat tidak kita harapkan. Toleransi error dan RTO sering terjadi, bahkan diatas 50% RTO. Setelah di check, ternyata ini akibat dari php-fpm yang seakan-akan freeze dan tidak mampu mengembalikan data yang di inginkan secara cepat dan kemudian untuk siap kembali hit dari nginx.

Awalnya berfikir apakah php 7 ga bagus? Dan harus di kembangkan dengan bahasa pemrograman lain? Jawabannya belum tentu. Akhirnya gooling beberapa solusi untuk dikembangkan. Salah satu tulisannya : 500 Million hits/day with Nginx + PHP-FPM + MySQL. Tapi perlu di pertimbangkan terkait spesifikasi hardware yang ada ternyata. Karena setelah di implementasikan, tidak begitu siginifikan perubahan yang ada. 

Akhirnya menemukan web untuk optimasi di Nginx and PHP-FPM Configuration and Optimizing Tips and Tricks. Dalam tulisan tersebut, di sebutkan cara-cara perhitungan setting sesuai dengan spesifikasi hardware kita. Dan setelah di coba konfigurasi sesuai arahan, perubahannya siknifikan sekali. Toleransi error yang awalnya bisa diatas 50%, sekarang turun drastis sampai dengan toleransi 0% untuk hit 10K / 15 detik. 

Untuk test yang digunakan untuk bruteforce testing nya menggunakan loader.io. Dengan adanya fasilitas free, kita bisa ujicoba API kita atau web kita dengan batasan max 10K / 15 detik. Web ini memang akan melakukan bruteforce, tapi perlu di validasi terlebih dahulu domain yang akan kita test. Apakah memang merupakan web kita atau bukan. 

Sekarang yang jadi pertanyaan: Apakah kecepatan akses per detik masih ga di pedulikan dalam pengembangan? Bagi saya yang belum mampu beli hardware fisik untuk server dan masih menggunakan VM, saya masih sangat memperhitungkan kecepatan akses 1x hitnya berapa milisecond response yang di hasilkan. Karena ini berimbas dengan kemampuan aplikasi yang kita kembangkan dan kenyamanan customer yang akses.

Postingan populer dari blog ini

Fungsi lain tombol penerima panggilan di headset

Kegunaan tombol yang berada di headset utamanya adalah untuk menerima panggilan dan pause panggilan. Dan headset itu sendiri, kadang juga digunakan untuk mendengarkan music, digunakan bersama saat main game, supaya suara yang dikeluarkan oleh gadget tidak terlalu keras sehingga mengurangi beban gadget. Dengan mengurangi beban gadget, ada beberapa yang beranggapan kalau itu akan menghemat batere.

Bingung cari celah kemanan? pake google dork saja.

Google Dork adalah istilah yang merujuk pada teknik pencarian spesifik pada mesin pencari Google dengan menggunakan kata kunci atau sintaks tertentu. Teknik ini biasanya digunakan oleh para hacker atau peneliti keamanan untuk menemukan informasi sensitif dan rentan pada website tertentu.