Pertanyaan ini telah ditanyakan sebelumnya tetapi tidak baru-baru ini dan tidak dengan jawaban yang jelas.
Menggunakan Socket.io, apakah ada jumlah maksimum koneksi bersamaan yang dapat dipertahankan sebelum Anda perlu menambahkan server lain?
Adakah yang mengetahui lingkungan produksi aktif yang menggunakan websockets (terutama socket.io) dalam skala besar? Saya benar-benar ingin tahu jenis pengaturan apa yang terbaik untuk koneksi maksimum?
Karena Websockets dibangun di atas TCP, pemahaman saya adalah bahwa kecuali port dibagikan di antara koneksi Anda akan terikat oleh batas port 64K. Tetapi saya juga telah melihat laporan koneksi 512K menggunakan Gretty . Jadi saya tidak tahu.
Jawaban:
Artikel ini dapat membantu Anda: http://drewww.github.io/socket.io-benchmarking/
Saya bertanya-tanya pertanyaan yang sama, jadi saya akhirnya menulis tes kecil (menggunakan polling XHR) untuk melihat kapan koneksi mulai gagal (atau tertinggal). Saya menemukan (dalam kasus saya) bahwa soket mulai bekerja sekitar 1400-1800 koneksi bersamaan.
Ini adalah inti singkat yang saya buat, mirip dengan tes yang saya gunakan: https://gist.github.com/jmyrland/5535279
sumber
Saya mencoba menggunakan socket.io di AWS, saya dapat menyimpan paling banyak sekitar 600 koneksi dengan stabil.
Dan saya menemukan itu karena socket.io menggunakan polling panjang terlebih dahulu dan kemudian ditingkatkan ke websocket.
setelah saya mengatur konfigurasi untuk hanya menggunakan websocket, saya dapat menyimpan sekitar 9000 koneksi.
Setel konfigurasi ini di sisi klien:
sumber
Orang ini tampaknya telah berhasil memiliki lebih dari 1 juta koneksi bersamaan di satu server Node.js.
http://blog.caustik.com/2012/08/19/node-js-w1m-concurrent-connections/
Tidak jelas bagi saya berapa banyak port yang dia gunakan.
sumber
Untuk + 300k koneksi bersamaan:
Tetapkan variabel ini di
/etc/sysctl.conf
:Juga, ubah variabel ini di
/etc/security/limits.conf
:Dan terakhir, tingkatkan juga buffer TCP di
/etc/sysctl.conf
:untuk informasi lebih lanjut silakan merujuk ke https://www.linangran.com/?p=547
sumber