針對極光推送送達率的探究

前言

前段時間內部一個應用對接了極光推送,開發人當然是我咯,根據多年對極光的認可這塊對接還是很有信心的。畢竟是內部系統,送達率要求還是很高的,業務實時性需要,所以產品這塊非常看重送達率,我對他說極光的實時送達率很客觀的,有實驗室數據,但是他還是希望我幫他提供一個可靠的數據,下邊是我對實時送達率的一個分析。

當然,針對推送作爲開發的我更關注整體送達率(準確送達率),文中也有提到,最簡單可靠的方式就是提高app的存活率。

先了解三個概念

  1. 目標數:一個月內與極光服務器有過連接的用戶(設備)。
    這部分數據包含:app卸載的,app在線的,app離線的(未啓動或者未開啓推送的)
    所以數據量非常龐大,我們的業務受節假日影響,有相關波動,所以這個維度比較虛。

  2. 在線數:消息推送時目標用戶在線。
    這部分數據指得是實時與極光服務器保持常連接的用戶或設備數。

  3. 送達數:消息發送到達客戶端的數量。
    這部分數據包含:在線消息數和離線消息數,其中離線消息是默認保存一天的,也就是說一天只內只要啓動應用開啓推送都可以接收到的。

準確的測算方式

最準確的測算極光送達率方法應該按照在“某個時間段”並且“單一發送消息”和“大量用戶”支撐,遵循以下公式:
rate = (在線接收數+離線接收數)/ 有效目標數

有效目標數指的是一天之內啓動應用的用戶數,目前極光推送官方沒有離線接收數和有效目標數這兩維度,並且我們的消息是零零散散發送的,這就給我們測算造成了一定困難。

之前也是因爲沒有離線接收這個數據,當時用的是送達數/目標數,測算出主項目那邊大概是30%,內部項目我測算了一下佔到55%,內部項目雖然客觀,但這個數據不是我們想要的。

根據目前極光給出的數據維度,只能按照某個短時間內測算實時送達率,即:送達數/在線數,忽略掉離線的那部分。

實例

前段時間內部項目有新版本需要上線,推送了一條消息給全國門店:
在這裏插入圖片描述第一部分是瞬間全國的推送(包含干擾部分),第二部分是相鄰時間段其他零星消息的干擾情況,大概一分鐘是接收30條。

針對全國的推送具體情況如下:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
因此根據全國推送並去除干擾消息,得出實時極光送達率:
rate = (510+479+357-30-零星離線接收的)/ (483+466+334) 約= 100%

目前是測算實時在線到達率結果是可觀的,離線的部分後邊可以看看能否通過其他渠道去了解。

這裏也有人有相關的提問:https://community.jiguang.cn/question/35820

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章