Abstract
Aplikasi chat merupakan aplikasi berbasis real time. Untuk membuat aplikasi real time, terdapat beberapa teknik yang bisa digunakan. Dua teknik yang sering digunakan adalah long polling dan websocket. long polling merupakan teknik dimana client melakukan request ke server namun server tidak akan langsung mengembalikan response. Websocket adalah teknik yang mendefinisikan komunikasi full-duplex channel yang beroperasi melalui soket tunggal melalui web. Pengujian performansi dilakukan untuk membandingkan kinerja performansi dari long polling dan websocket. Pengujian pada metode long polling dilakukan dengan menggunakan aplikasi apache JMeter. Pengujian pada metode websocket dilakukan dengan menggunakan aplikasi Thor. Parameter pengujian yang dilakukan meliputi pengujian latency, pengujian CPU usage, pengujian memory usage, dan pengujian error rate. Hasil pengujian latency menunjukkan nilai latency yang dimiliki oleh websocket lebih rendah dibandingkan dengan nilai latency yang dimiliki oleh long polling. Hasil pengujian CPU Usage menunjukkan metode websocket memiliki tingkat load cpu yang stabil karena berbanding lurus dengan peningkatan jumlah koneksi. sedangkan untuk long polling load cpu yang terjadi ketika diuji tidak berbanding lurus dengan jumlah koneksi. Hasil pengujian memory usage menunjukkan metode websocket menggunakan memory yang lebih kecil jika dibandingkan dengan penggunaan memory pada metode long polling. Hasil pengujian error rate menunjukkan metode websocket memiliki tingkat realibilitas yang lebih tinggi dibandingkan dengan metode long polling. Dari beberapa bagian pengujian yang dilakukan menunjukkan jika dibandingkan dengan long polling, metode websocket lebih memenuhi kebutuhan real time sebuah aplikasi.