“超時”機制有哪些?“加載超時”只排第三
“超時”處理機制很常見。筆者將其分為三類:邏輯類的、業(yè)務類的,和性能類的超時機制。
一、邏輯類超時處理機制
這類超時機制,是為了完成功能閉環(huán)而設立的,舉例如下。
1. 超時無應答機制
超時無應答機制比較常見,比如微信請求語音聊天,請求發(fā)出15s,對方不應答,則自動取消。
首先,請求發(fā)出去,一定要有結束的節(jié)點,避免無休止地占用資源。
其次,設置固定的等待時長,超時無應答,則結束。當然,也可以輔助手動取消按鈕。
2. 若干時間內不打擾
有的場景,希望用戶多次收到提醒,但是又不能過于頻繁,因此可以設置成若干時長內不再打擾的模式。
類似下圖免打擾的提示:XX分鐘內不提醒,為用戶提供更寬泛的選擇通道。
當然超過選定的時間久繼續(xù)“打擾”了。
3. 超過一定時間,則采取措施
例如,出于存儲的空間考慮,小米手機存儲的照片超過一定時間沒打開過,則自動上傳到云端。那么這也是保障手機性能的一個策略。
它比“超時無應答”更激進一點,“自作主張”地將事件向前推進一步。
4. 超過一定時間,才釋放新消息
比如發(fā)起好友請求,等待對方接受。發(fā)起方可以多次發(fā)送請求。
但是作為接受方,若始終看不到,或不處理,是否重復推送新消息,一條條通知摞起來呢?
通常的方案是引入超時釋放消息的機制,即定義一個規(guī)則:
- 一定時間內,發(fā)起方可以連續(xù)發(fā)送待處理的消息,但只給接收方釋放第一條。這樣接收方就只顯示一條待處理通知。
- 若超過一段時間(通常一周)仍沒得到處理,則發(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. 網絡原因的超時
網絡原因的超時的原因,主要包括如下:
- 手機自身問題,比如停機、沒開wifi或者流量、系統(tǒng)卡死等。
- 手機所處環(huán)境網絡不好,向服務器請求超時。比如信號不好、或者信號接受不良。
- 服務器自身故。
- 服務器接收或回復故障,比如機房網絡問題或服務器處理問題。
產品經理要做的就是如何讓這個事件融洽地落地。
(1)直接報以空白頁或者錯誤頁
(2)提供當前刷新渠道,保存前面的操作
比如用戶是在網購,接近下單了,結果網絡中斷了一會。這時候直接反饋一個空白頁,用戶只能退回到上一步,前功盡棄。
因此最好是設計一個本地刷新按鈕,點擊即在當前刷新,避免了用戶重復操作之前的步驟。
基于該思想,可以作如下發(fā)揮或拓展:
- 設計刷新時的彩蛋,給用戶帶來一些驚喜。比如彈出來一個俏皮的圖案,或一句詼諧的話緩解用戶的不滿的情緒。
- 增加保存本地,或保存草稿的按鈕,在表單資料填寫界面,多使用類似的設計。
- 增加自動重新刷新:可以設置超時加載的機制。超過一定的時間 則取消本次加載。比如王者榮耀的連線嘗試7次。
上實現的本質就是緩存。比如對于新聞類的、咨詢類的,這類APP一般都會有緩存。這就是微信朋友圈,為什么在沒有網絡的情況下也是可以查看之前加載過的內容。
有的應用之所以很大,就是因為緩存了大量內容,當然也需要定期自動或手動清緩存的。
2. 客戶端配置不足導致的超時
比如內存、分辨率等硬件參數導致的。這不是話題重點。
作為產品經理,只需要注意的是,做好邊緣機型的適配。
作者:唧唧歪歪PM;公眾號:唧唧歪歪PM(ID:jjyypm)
本文由 @唧唧歪歪PM 原創(chuàng)發(fā)布于人人都是產品經理,未經作者許可,禁止轉載。
題圖來自Unsplash,基于CC0協(xié)議
點贊
贊,已加入我的址知識庫
哪里的知識庫?
語雀
寫的很好啊
可以關注下公眾號 不走丟
??
寫的很詳細