Soalan: Saya ingin membuat fungsi yang serupa dengan antara muka sembang QQ di halaman utama laman web Ia hanya perlu memaparkan avatar pengguna dan kandungan yang dihantar, dan tidak perlu merakam sembang. Hanya paparkan 20 rekod terkini dalam masa nyata?
Idea peribadi: Memandangkan fungsinya agak mudah dan tidak terlalu rumit, dan kandungan yang dipaparkan hanya memerlukan 20 item terkini, saya bercadang untuk menggunakan kaedah pengundian AJAX untuk melakukannya Apabila pengguna memasuki rekod sembang, rekod disimpan dalam pangkalan data ( undian AJAX membaca data pangkalan data dalam masa nyata), dan kemudian memaparkan data pada halaman selepas memperolehnya. Adakah boleh melakukan ini? Adakah terdapat sebarang masalah apabila bersembang dengan berbilang orang? Sebagai contoh, apabila data dipaparkan pada halaman, ia akan menjadi sangat perlahan atau sesuatu?
Websoket boleh digunakan untuk melakukan ini, tetapi saya tidak pernah menggunakannya, dan saya tidak tahu sama ada ia boleh digunakan pada pelayan Windows (projek itu digunakan pada Windows).
Inilah persoalannya: Adakah anda mempunyai kaedah yang baik dan mudah? Beri saya nasihat! ! ! !
.websocket
或者socket.io
就可以实现了, 这个和操作平台关系不是很大, 和你实现的web服务程序关系比较大, 因为你得选择一个一个web程序支持websocket
或者socket.io. 我之前用
node.js` telah dilaksanakan, dan kami juga merujuk kepada contoh dalam talian Anda juga boleh merujuk kepadaNode.js + Soket Web untuk mencipta program sembang segera HiChat
Dengan pengundian AJAX, apabila berbilang orang bersembang, setiap terminal perlu terus meminta data pangkalan data, yang mempunyai kelemahan berikut:
Disebabkan jumlah permintaan yang banyak, ia akan meningkatkan tekanan pada pelayan.
Tinjauan AJAX sendiri lambat
Memandangkan pelayar mempunyai had pada bilangan permintaan AJAX di bawah nama domain yang sama, kecekapan interaksi data masih agak rendah.
Jika anda menggunakan WebSocket, saya syorkan menggunakan
nodeJS
的ws
做一个广播服务,可以挂起在Windows后台,也可以随意移植,相当方便,用到的库是这个:https://www.npmjs.com/package/ws不得不说,
NodeJS
untuk menulis perkara yang agak baik dari segi kemudahalihan, kebolehskalaan dan keserasian.Saya tidak akan pergi ke operasi khusus Anda boleh merujuk kepada
ws
包的broadcase example
contoh untuk menulisnya.