基于WebSocket協議的在線聊天系統(tǒng)設計與實現.pdf_第1頁
已閱讀1頁,還剩68頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、隨著電子商務的發(fā)展,各大電商平臺發(fā)展迅速,網絡購物逐漸成為人們主要消費的方式之一。在網絡購物過程中,通過聊天軟件與商家交流是用戶獲取信息最直接、有效的途徑。
  目前,各大電商平臺中的聊天系統(tǒng)多是采用基于HTTP協議的輪詢、長輪詢等技術來實現的,為了及時獲取新信息,瀏覽器端需頻繁的向服務端發(fā)送HTTP請求,且每次交互需要攜帶幾百字節(jié)的協議頭信息。另外,由于消息在服務端更新時間不確定,在交互過程中,很大比例請求不能獲取到新消息。We

2、bSocket協議的出現為解決上述問題提供了途徑。WebSocket協議為服務器、瀏覽器間定義了一種全雙工、異步、單套接字連接,能夠實現服務器瀏覽器間異步、雙工通信,且在通信過程中WebSocket協議頭最多占用14字節(jié),非常高效。如能基于WebSocket協議實現聊天軟件,則可以有效解決上述問題。然而,將WebSocket協議應用于在線聊天系統(tǒng)時,面臨三個主要困難,即維持WebSocket連接、集群中Session共享和服務端消息處理

3、。WebSocket連接維持困難指的是多種因素可能會導致瀏覽器與服務器間的連接失效;集群中Session共享困難指的是Session實例保存在不同服務器實例的內存中,難以共享;服務端處理消息困難指的是用戶所有的消息都需要經過服務端處理、轉發(fā),處理壓力大。
  本文針對上述三個問題進行深入研究,在詳細分析問題存在的根本原因后,設計了特定的模塊來解決上述問題:WebSocket連接保持模塊借鑒保持Socket持久連接的設計思路,通過心

4、跳連接、失效重連、連接監(jiān)測等機制減少WebSocket連接失效情況;Session共享模塊通過Nginx服務器和Memcached緩存服務器來解決Session共享問題,其中,配置了Ip_hash策略的Nginx服務器用于均衡請求,Memcached服務器用于記錄集群Session分布情況;服務端消息處理模塊采用消息確認、重發(fā)、補償和保存消息到數據庫等多種方式,保證服務端處理消息的準確性。
  在此基礎上,最終實現了基于WebSo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論