1
ใช้การบีบอัด websocket กับ uWebSockets.js และ Websocket-Sharp
เรามีเกมมือถือที่ใช้ websocket สำหรับเชื่อมต่อ เซิร์ฟเวอร์เป็น app Node.js ใช้uWebSockets.jsห้องสมุดและลูกค้าเป็น app สามัคคีโดยใช้WebSocket ชาร์ปห้องสมุด พวกเขาเล่นได้ดีด้วยกันและเราไม่ได้พบปัญหากับพวกเขา เมื่อเร็ว ๆ นี้เราต้องการที่จะช่วยให้การบีบอัด WebSocket ห้องสมุดทั้งสองระบุว่าพวกเขาสนับสนุนส่วนขยายการบีบอัดข้อความต่อข้อความ แต่ดูเหมือนว่ามีบางสิ่งที่เข้ากันไม่ได้ เพราะเมื่อเรากำหนดค่าให้ใช้การบีบอัดการเชื่อมต่อ websocket จะปิดลงทันทีในการจับมือกัน นอกจากนี้เรายังทดสอบไคลเอ็นต์ด้วยไลบรารีwsและเป็นตัวอย่างสำหรับการบีบอัดด้วยผลลัพธ์เดียวกัน เราพยายามแก้ไขด้วยตัวเลือกการบีบอัด ws และพบว่าเมื่อเราแสดงความคิดเห็นตัวเลือก serverMaxWindowBits (ค่าเริ่มต้นของมูลค่าการเจรจาต่อรอง) การเชื่อมต่อสามารถสร้างและส่งและรับข้อความได้โดยไม่มีปัญหา นอกจากนี้เรายังถามเกี่ยวกับการควบคุม serverMaxWindowBits ใน uWebsockets สิ่งสุดท้ายที่เราพยายามคือการเชื่อมต่อเซิร์ฟเวอร์ uWS ขั้นต่ำและไคลเอนต์ websocket-sharp นี่คือรหัสสำหรับเซิร์ฟเวอร์: const uWS = require('uWebSockets.js'); const port = 5001; const app = uWS.App({ }).ws('/*', { …