Web Socket

Apa itu WebSocket?

WebSocket adalah standar baru untuk komunikasi realtime pada Web dan aplikasi mobile. WebSocket dirancang untuk diterapkan di browser web dan server web, tetapi dapat digunakan oleh aplikasi client atau server. WebSocket adalah protokol yang menyediakan saluran komunikasi full-duplex melalui koneksi TCP tunggal.


WebSocket merupakan bagian dari HTML5. WebSocket menghadirkan pengurangan besar dalam lalu-lintas jaringan yang tidak penting dan latency dibandingkan dengan solusi polling dan long-polling yang telah digunakan untuk mensimulasikan koneksi dua arah dengan cara menjaga dua koneksi tetap terhubung.


Kapan WebSocket Ditemukan?

WebSocket pertama kali dirujuk sebagai TCP Connection dalam spesifikasi HTML5, sebagai tempat untuk berbasis TCP socket API. Pada bulan Juni 2008, Nama WebSocket diciptakan oleh Ian Hickson dan Michael Carter, serangkaian diskusi yang dipimpin oleh Michael Carter yang mengakibatkan versi pertama dari protokol dikenal sebagai WebSocket.


Manfaat WebSocket

Websocket memungkinkan server untuk mendorong data kepada klien yang terhubung.

Mengurangi lalu lintas jaringan yang tidak perlu dan latency menggunakan full duplex melalui koneksi tunggal.

Streaming melalui proxy dan firewall, mendukung komunikasi simultan hulu dan hilir.

Kompatibel dengan pre-WebSocket dunia dengan cara beralih dari koneksi HTTP ke WebSockets.

Kelebihan WebSocket

Mendukung komunikasi Duplex

Lebih cepat dari HTTP

Meningkatkan efisiensi komunikasi antara Client dan Server

Penggantian HTTP menggunakan TCP

Kekurangan WebSocket

Mengambil alih protokol komunikasi antara Client dan Server untuk koneksi tertentu

Web Browser harus sepenuhnya support HTML5

Permasalahan yang diselesaikan dengan adanya WebSocket

Latar belakang yang mendasari terciptanya websocket adalah permintaan beberapa client yang mengharuskan developer bisa membuat aplikasi berbasis web secara real time atau real-time apps. Aplikasi real time adalah dimana ketika ada perubahan data, maka saat itu juga website di browser klien juga ada perubahan atau setidaknya muncul notifikasi. Ada alternatif lain untuk permasalahan developer tersebut, diantaranya adalah metode polling dan long polling.


Metode polling ini mengirimkan request data ke server secara terus menerus. Kalau hanya satu client yang melakukan request berulang seperti itu, mungkin tidak masalah, tapi bagaimana jika ada beberapa client yang mengakses satu server dan berulangkali melakukan metode Polling. Maka server akan jadi sibuk dan rentan terkena serangan DDOS.


Metode long polling adalah metode polling dengan interval waktu yang berkala. Jadi request tidak sesering metode Polling. Manfaatnya adalah server jauh lebih stabil dibandingkan dengan metode polling. Namun permasalahannya sederhana, Long Polling tidak menjawab real time, karena ada interval waktu yang digunakan.


Websocket muncul pada tahun 2009 sebagai proposal, kemudian dikembangkan selama 3 tahun sehingga WebSocket sekarang jauh lebih stabil dan sudah banyak di-support oleh bermacam-macam browser.


Sekian.

Komentar