web實時訊息推送方案 - (重要~個人簡歷要引申)

balfish發表於2024-03-06

一 什麼是訊息推送

推送的場景比較多,比如有人關注我的公眾號,這時我就會收到一條推送訊息,以此來吸引我點選開啟應用。

訊息推送通常是指網站的運營工作等人員,透過某種工具對使用者當前網頁或移動裝置 APP 進行的主動訊息推送。

訊息推送一般又分為 Web 端訊息推送和移動端訊息推送。

移動端訊息推送示例:

Web 端訊息推送示例:

在具體實現之前,咱們再來分析一下前邊的需求,其實功能很簡單,只要觸發某個事件(主動分享了資源或者後臺主動推送訊息),Web 頁面的通知小紅點就會實時的 +1 就可以了。

通常在服務端會有若干張訊息推送表,用來記錄使用者觸發不同事件所推送不同型別的訊息,前端主動查詢(拉)或者被動接收(推)使用者所有未讀的訊息數。


二 訊息推送常見方案

2.1 短輪詢

短輪詢很好理解,指定的時間間隔,由瀏覽器向伺服器發出 HTTP 請求,伺服器實時返回未讀訊息資料給客戶端,瀏覽器再做渲染顯示。

一個簡單的 JS 定時器就可以搞定,每秒鐘請求一次未讀訊息數介面,返回的資料展示即可。

相關文章