我和 WebSocket 的那些事(一)
我的策劃大佬離職了,在他go之前我都沒有解決好一個問題,感覺如果我換了工作面試的時候,別人問到 “你在做項目的時候,遇到的最頭疼的問題是什么,是怎么解決的?”,首先想到的應該也是他,今天感覺是時候寫點東西了。
做 PMGO 的時候,濤哥提出想要用瀏覽器的桌面推送,來替代 hx 的提醒,最早提出WebSocket的想法的,其實不是我們組,別的組也有用了,但沒法借鑒,大佬們都是Node.js實現的,用Nginx做反向代理來部署它,我只有 IIS,.Net 支持 WebSocket 貌似也不是太久遠的事,當時考慮用,也沒有多少能借鑒的,后來在 Github 上找到了 Fleck(?https://github.com/statianzo/Fleck??),雖然不是fork最多的,但用起來是最方便的,對于內部系統來說,在不考慮最大連接數的問題下,它相當的好用(并不是說它不支持而是有一些問題,參考 issue)
代碼寫出來了,感覺十分的精致,然后我們就上線了。
?
正式服更新后還是很穩定的,然后我們打算在此基礎上做迭代看板的實時更新。大約一個月后,測試服的WebSocket報了個異常,“當前端口被占用”,我一開始認為是更新測試服時,客戶端與服務端的連接沒有及時斷開,端口資源被強占的情況下無法再次使用相同的端口做服務,因此我等了一下嘗試打開服務,可以成功啟動,不了了之。就在這個問題被我忽視了又一個月后,盡管在此期間出現了少量的端口占用錯誤,這一次,服務再也啟動不了了,不管等了多久。
我申請連服務器,找到占用端口的進程id,用pid去任務管理器找對應的進程,沒有找到。tasklist|findstr 找到對應端口的進程狀態,找到了一大堆?TIME-WAIT 進程,對應的那個pid就是剛才找到的。無奈內網無法截圖留念,我一定會珍藏它......
查看了他的issue,有個作者提到連接瓶頸,但貌似是ssl證書的問題,于是乎我在這個坑上摔倒了......
轉載于:https://www.cnblogs.com/lxmajs/p/8799322.html
總結
以上是生活随笔為你收集整理的我和 WebSocket 的那些事(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 雨林木风刘杰娇:114 啦网址导航改版围
- 下一篇: 上海理工大学机械工程学院考研经验