“超時”機制有哪些?“加載超時”只排第三

8 評論 16920 瀏覽 93 收藏 9 分鐘

“超時”處理機制很常見。筆者將其分為三類:邏輯類的、業(yè)務類的,和性能類的超時機制。

一、邏輯類超時處理機制

這類超時機制,是為了完成功能閉環(huán)而設立的,舉例如下。

1. 超時無應答機制

超時無應答機制比較常見,比如微信請求語音聊天,請求發(fā)出15s,對方不應答,則自動取消。

首先,請求發(fā)出去,一定要有結束的節(jié)點,避免無休止地占用資源。

其次,設置固定的等待時長,超時無應答,則結束。當然,也可以輔助手動取消按鈕。

2. 若干時間內不打擾

有的場景,希望用戶多次收到提醒,但是又不能過于頻繁,因此可以設置成若干時長內不再打擾的模式。

類似下圖免打擾的提示:XX分鐘內不提醒,為用戶提供更寬泛的選擇通道。

當然超過選定的時間久繼續(xù)“打擾”了。

3. 超過一定時間,則采取措施

例如,出于存儲的空間考慮,小米手機存儲的照片超過一定時間沒打開過,則自動上傳到云端。那么這也是保障手機性能的一個策略。

它比“超時無應答”更激進一點,“自作主張”地將事件向前推進一步。

4. 超過一定時間,才釋放新消息

比如發(fā)起好友請求,等待對方接受。發(fā)起方可以多次發(fā)送請求。

但是作為接受方,若始終看不到,或不處理,是否重復推送新消息,一條條通知摞起來呢?

通常的方案是引入超時釋放消息的機制,即定義一個規(guī)則:

  1. 一定時間內,發(fā)起方可以連續(xù)發(fā)送待處理的消息,但只給接收方釋放第一條。這樣接收方就只顯示一條待處理通知。
  2. 若超過一段時間(通常一周)仍沒得到處理,則發(fā)起方再次發(fā)送的時候,重新釋放一條新消息給對方,并將舊消息做更新(仍顯示一條)。

5. 超過一定時間,則內容消失

某些互動游戲,需要雙方對稱發(fā)出的,如劃拳類(石頭剪刀布)、比大小類(擲骰子)。

一方發(fā)出之后,要等待對方。二人又可以不斷地發(fā)新的,那么上次發(fā)出的要等待多久呢?

微信的處理辦法是將發(fā)出的當作歷史消息。這是一種省事的方案。

但是如果界面不是聊天信息流,而是有限的空間,比如這樣:

那么就需要考慮新的消息頂替舊消息,以及同一方發(fā)出的消息最長停留時間。

比如可以約定,同一方發(fā)出的,停留最長時間5s,超時則自動消失,無需等待對方的。若有新的則直接替換舊的。

二、業(yè)務類的超時機制

業(yè)務方面的超時機制,多由業(yè)務習慣而定,相較寬松靈活。

1. “門檻”類的超時機制

一些社交軟件,限時免費聊天,超時則需要付費,或其他辦法獲取延時。

比如語音聊天(未公開身份時)超過60s則自動結束。

這種就是從運營的需求考慮,人為設置一個“免費品嘗”的條件,從而引入了超時的概念。

2. 交易類的超時處理

比如,賣家操作“發(fā)貨”之時起,買家超過規(guī)定時限內確認收貨且未申請退款的,則默認買家已收到貨,且貨物質量符合交易雙方的約定,交易成功。

如果在貼近市場的話,還可以規(guī)定快遞、EMS及不需要物流的商品十天內,平郵商品三十天內。

類似還有,買家自拍下商品之時起一天內未付款的,交易自動關閉;

自買家付款之時起三百六十五天內賣家未點擊“發(fā)貨”的,交易自動關閉,退款給買家;

賣家自本退款申請?zhí)峤恢掌鹞逄靸?,不響應退款申請的,默認達成退款申請,進入到退貨程序等。如電商這類業(yè)務性極強的領域,到處都是類似的超時機制。

3. 其他行業(yè)的超時規(guī)則

業(yè)務類超時機制,實際都是對實際業(yè)務模型的線上呈現,本質是對行業(yè)契約的履約。

三、性能方面的超時機制

性能方面的超時多是客觀被動的,最主要是加載超時。包括是網絡狀態(tài)不好,和客戶端配置不足導致的。

1. 網絡原因的超時

網絡原因的超時的原因,主要包括如下:

  1. 手機自身問題,比如停機、沒開wifi或者流量、系統(tǒng)卡死等。
  2. 手機所處環(huán)境網絡不好,向服務器請求超時。比如信號不好、或者信號接受不良。
  3. 服務器自身故。
  4. 服務器接收或回復故障,比如機房網絡問題或服務器處理問題。

產品經理要做的就是如何讓這個事件融洽地落地。

(1)直接報以空白頁或者錯誤頁

(2)提供當前刷新渠道,保存前面的操作

比如用戶是在網購,接近下單了,結果網絡中斷了一會。這時候直接反饋一個空白頁,用戶只能退回到上一步,前功盡棄。

因此最好是設計一個本地刷新按鈕,點擊即在當前刷新,避免了用戶重復操作之前的步驟。

基于該思想,可以作如下發(fā)揮或拓展:

  1. 設計刷新時的彩蛋,給用戶帶來一些驚喜。比如彈出來一個俏皮的圖案,或一句詼諧的話緩解用戶的不滿的情緒。
  2. 增加保存本地,或保存草稿的按鈕,在表單資料填寫界面,多使用類似的設計。
  3. 增加自動重新刷新:可以設置超時加載的機制。超過一定的時間 則取消本次加載。比如王者榮耀的連線嘗試7次。

上實現的本質就是緩存。比如對于新聞類的、咨詢類的,這類APP一般都會有緩存。這就是微信朋友圈,為什么在沒有網絡的情況下也是可以查看之前加載過的內容。

有的應用之所以很大,就是因為緩存了大量內容,當然也需要定期自動或手動清緩存的。

2. 客戶端配置不足導致的超時

比如內存、分辨率等硬件參數導致的。這不是話題重點。

作為產品經理,只需要注意的是,做好邊緣機型的適配。

 

作者:唧唧歪歪PM;公眾號:唧唧歪歪PM(ID:jjyypm

本文由 @唧唧歪歪PM 原創(chuàng)發(fā)布于人人都是產品經理,未經作者許可,禁止轉載。

題圖來自Unsplash,基于CC0協(xié)議

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 點贊

    來自湖南 回復
  2. 贊,已加入我的址知識庫

    來自廣東 回復
    1. 哪里的知識庫?

      來自湖南 回復
    2. 語雀

      來自廣東 回復
  3. 寫的很好啊

    來自河南 回復
    1. 可以關注下公眾號 不走丟

      來自湖南 回復
  4. ??

    來自北京 回復
  5. 寫的很詳細

    來自四川 回復