Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Socket.IO adalah pustaka sumber terbuka yang sangat populer untuk olahpesan real time antara klien dan server. Mengelola koneksi stateful dan persisten antara klien dan server sering kali menjadi sumber frustrasi bagi pengguna Socket.IO. Masalahnya lebih akut ketika beberapa instans Socket.IO tersebar di seluruh server.
Azure menyediakan solusi cloud yang dikelola sepenuhnya untuk Socket.IO. Dukungan ini menghapus beban penyebaran, hosting, dan koordinasi instans Socket.IO untuk pengembang. Tim pengembangan kemudian dapat fokus membangun pengalaman real time dengan menggunakan API yang sudah dikenal dari pustaka Socket.IO.
Arsitektur yang disederhanakan
Fitur ini menghapus kebutuhan komponen server "adaptor" saat menskalakan aplikasi Socket.IO, memungkinkan tim pengembangan untuk menuai manfaat dari arsitektur yang disederhanakan.
Manfaat daripada menghosting aplikasi Socket.IO sendiri
Tabel berikut ini memperlihatkan manfaat menggunakan solusi yang dikelola sepenuhnya dari Azure.
Item | Menghosting aplikasi Socket.IO sendiri | Menggunakan Socket.IO di Azure |
---|---|---|
Penyebaran | Dikelola pelanggan | Dikelola Azure |
Hosting | Pelanggan perlu menyediakan sumber daya server yang cukup untuk melayani dan memelihara koneksi persisten | Dikelola Azure |
Menskalakan koneksi | Pelanggan dikelola dengan menggunakan komponen sisi server yang disebut adaptor | Azure dikelola dengan lebih dari 100.000 koneksi klien di luar kotak |
Jaminan waktu aktif | Dikelola pelanggan | Azure dikelola dengan lebih dari 99,9 persen waktu aktif |
Keamanan tingkat perusahaan | Dikelola pelanggan | Dikelola Azure |
Sistem dukungan tiket | Tidak berlaku | Dikelola Azure |
Saat Anda menghosting aplikasi Socket.IO sendiri, klien membuat WebSocket atau koneksi polling panjang langsung dengan server Anda. Mempertahankan koneksi stateful tersebut menempatkan beban berat pada server Socket.IO Anda. Beban ini membatasi jumlah koneksi bersamaan dan meningkatkan latensi olahpesan.
Pendekatan umum untuk memenuhi tantangan konkurensi dan latensi adalah dengan memperluas skala ke beberapa server Socket.IO. Perluasan skala memerlukan komponen sisi server yang disebut adaptor, seperti adaptor Redis yang disediakan pustaka Socket.IO. Namun, adaptor semacam itu memperkenalkan komponen tambahan yang perlu Anda sebarkan dan kelola. Ini juga mengharuskan Anda untuk menulis logika kode tambahan agar semuanya berfungsi dengan baik.
Dengan Socket.IO di Azure, Anda dibeberkan dari penanganan masalah penskalakan dan menerapkan logika kode yang terkait dengan penggunaan adaptor.
Model pemrograman yang sama
Untuk memigrasikan aplikasi Socket.IO yang dihost sendiri ke Azure, Anda hanya menambahkan beberapa baris kode. Tidak perlu mengubah sisa kode aplikasi. Dengan kata lain, model pemrograman tetap sama, dan kompleksitas mengelola aplikasi real-time berkurang.