前言
在解決了上一次關(guān)于超級話題積分bug后,又接到超級話題簽到提醒的產(chǎn)品需求。這是一篇偏于技術(shù)實(shí)現(xiàn)的文章,講述的比較籠統(tǒng),業(yè)務(wù)圍繞超級話題的簽到提醒進(jìn)行展開。如果,您對超級話題簽到提醒的技術(shù)背景與實(shí)現(xiàn)感興趣,那么這篇文章希望對你有幫助。
產(chǎn)品
最近,在忙活超級話題的簽到提醒產(chǎn)品的開發(fā)。首先,這是第一次比較熱切的關(guān)注用戶反應(yīng)的產(chǎn)品。雖然說,對于產(chǎn)品的參與和認(rèn)知并沒有多么深入的理解,但是愈發(fā)的覺得這件事很有意識(shí),也更想?yún)⑴c其中。
超級話題打破了傳統(tǒng)話題的模式,以社區(qū)的形式展現(xiàn),提高用戶互動(dòng)與粘性。其中,簽到是不可或缺的一項(xiàng)功能。然而在前期,簽到功能在給用戶帶來了高回訪的情況下,也有著苦惱。作為研發(fā)同學(xué),更是備受折磨。為什么?產(chǎn)品總是拿著反饋中自稱經(jīng)簽過但卻莫名斷簽的用戶ID找我排查問題所在。然而,幾乎都是一些凌晨時(shí)分簽到而次日未簽的情形。盡管是這樣,用戶的反感也是無法消除的。
為了不再做反復(fù)的排查勞動(dòng),只好做了一個(gè)相關(guān)查詢后臺(tái)。
產(chǎn)品同學(xué)為了召回用戶,提供話題的UV和PV,提出了簽到提醒的概念。
簽到提醒會(huì)根據(jù)當(dāng)前用戶的簽到行為,進(jìn)行提醒私信的推送。目前為止,基本上每日需要提醒的量大約在85w左右。然而,在發(fā)送私信的過程中并非如此順利。
技術(shù)
- 準(zhǔn)備數(shù)據(jù)
首先,要進(jìn)行數(shù)據(jù)的準(zhǔn)備。利用crontab定時(shí)將DB中的數(shù)據(jù)寫入磁盤文件。之所以這么做,主要是由于DB中的數(shù)據(jù)是動(dòng)態(tài)的,需要將數(shù)據(jù)寫成靜態(tài)的形式以更好的分批處理。
- 發(fā)送私信
然仍采用crontab定時(shí)啟動(dòng)發(fā)送私信的腳本。將啟動(dòng)n個(gè)進(jìn)程,同時(shí)處理上述步驟生成的n個(gè)文件。以curl_multi的方式批量調(diào)用話題粉絲服務(wù)的內(nèi)部接